Modificar el control de acceso a nivel de mandato para un mandato de controlador

De acuerdo a las políticas de control de acceso, los usuarios cuyo rol sea únicamente el de Director de marketing no pueden ejecutar el mandato UserRegistrationAdminAddCmd. El escenario siguiente describe los pasos necesarios para modificar las políticas existentes de modo que los usuarios puedan ejecutar este mandato. Puede utilizar los pasos de este escenario y personalizarlos según sus propios requisitos.

Por qué y cuándo se efectúa esta tarea

Todos los mandatos de controlador requieren una política de control de acceso a nivel de mandatos, con esta definición ActionGroupName = ExecuteCommandActionGroup. Asimismo debe tener un grupo de recursos que incluya el nombre de interfaz del mandato de controlador. Estas políticas normalmente hacen referencia a un rol específico, por ejemplo, MarketingManagersExecuteMarketingManagerCmdResourceGroup.

<Policy Name="
MarketingManagersExecuteMarketingManagerCmdResourceGroup"
        OwnerID="RootOrganization"
        UserGroup="MarketingManagers"
        ActionGroupName="ExecuteCommandActionGroup"
        ResourceGroupName="MarketingManagerCmdResourceGroup"
        PolicyType="groupableStandard">
</Policy>
Nota: La política anterior es una de las políticas predeterminadas que se cargan en la base de datos durante la creación de la instancia. Para obtener más información sobre las políticas predeterminadas, consulte Grupos de políticas de control de acceso predeterminados.

En este caso, si desea que los usuarios con el rol de Director de marketing puedan ejecutar UserRegistrationAdminAddCmd, tiene que añadir este mandato al grupo de recursos existente que se utiliza en la política creando su propio archivo XML y realizar las tareas siguientes:

Procedimiento

  1. Vuelva a definir la acción ExecuteCommand
  2. Vuelva a definir com.ibm.commerce.usermanagement.commands.UserRegistrationAddCmd como categoría de recursos.
  3. Asocie la categoría de recursos al grupo de recursos correspondiente, en este caso, MarketingManagerCmdResourceGroup.
  4. Copie el archivo de XML en WCDC_installdir/xml/policies/xml. El XML resultante podría ser similar al del ejemplo siguiente:
    
    <?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.usermanagement.commands.UserRegistrationAdminAddCmdResourceCategory"
                             
    ResourceBeanClass="com.ibm.commerce.usermanagement.commands.UserRegistrationAdminAddCmd">
    
                    <ResourceAction Name="ExecuteCommand"/>
            </ResourceCategory>
    
            
    <ResourceGroup Name="MarketingManagerCmdResourceGroup"
    OwnerID="RootOrganization"> 
                    <ResourceGroupResource
    Name="com.ibm.commerce.usermanagement.commands.UserRegistrationAdminAddCmdResourceCategory"/>
            </ResourceGroup> 
    
    </Policies>
    
  5. Cargue el archivo XML en la base de datos mediante el script acpload. Para obtener más información sobre cómo cargar los archivos XML, consulte Cargar los datos de política del control de acceso.
  6. En la Consola de administración, actualice el registro de políticas de control de acceso:
    1. Inicie la Consola de administración como Administrador de sitio.
    2. Pulse Configuración > Registro. Aparecerá una lista de componentes de registro.
    3. En la lista de registros, seleccione Políticas de control de acceso.
    4. Pulse Actualizar.

Resultados

Ahora puede utilizar el mandato de controlador si no está realizando la comprobación a nivel de recursos.