Exemple : Stratégie de contrôle d'accès au niveau de la commande pour les commandes de contrôleur
Les commandes de contrôleur nécessitent des stratégies de contrôle d'accès afin de répondre aux exigences de la structure de contrôle d'accès. Si vous créez une nouvelle commande de contrôleur, le nom de l'interface de la commande est spécifié comme ressource. Le snip XML suivant peut être modifié pour votre nouvelle commande et chargé à l'aide de la commande acpload :
<?xml version="1.0" encoding="ISO-8859-1" standalone="no" ?>
<!DOCTYPE Policies SYSTEM "../dtd/accesscontrolpolicies.dtd">
<Policies>
<Action Name="ExecuteCommand"
CommandName="Execute">
</Action>
<ResourceCategory Name="com.yourcompany.yourpackage.commands.YourControllerCmdResourceCategory"
ResourceBeanClass="com.yourcompany.yourpackage.commands.YourControllerCmd">
<ResourceAction Name="ExecuteCommand"/>
</ResourceCategory>
<ResourceGroup Name="AllSiteUserCmdResourceGroup" OwnerID="RootOrganization">
<ResourceGroupResource Name="com.yourcompany.yourpackage.commands.YourControllerCmdResourceCategory" />
</ResourceGroup>
</Policies>
Où :
- com.yourcompany.yourpackage.commands
- représente votre structure de packaging
- YourControllerCmd
- représente le nom de votre nouvelle commande de contrôleur
A titre d'exemple, le fichier XML suivant est utilisé pour charger la stratégie de contrôle d'accès d'une nouvelle commande de contrôleur créée dans un didacticiel contenu dans ce livre.
<?xml version="1.0" encoding="ISO-8859-1" standalone="no" ?> <!DOCTYPE Policies SYSTEM "../dtd/accesscontrolpolicies.dtd"> <Policies> <Action Name="ExecuteCommand" CommandName="Execute"> </Action> <ResourceCategory Name="com.ibm.commerce.sample.commands.MyNewControllerCmdResourceCategory" ResourceBeanClass="com.ibm.commerce.sample.commands.MyNewControllerCmd"> <ResourceAction Name="ExecuteCommand"/> </ResourceCategory> <ResourceGroup Name="AllSiteUserCmdResourceGroup" OwnerID="RootOrganization"> <ResourceGroupResource Name="com.ibm.commerce.sample.commands.MyNewControllerCmdResourceCategory" /> </ResourceGroup> </Policies>