Interfaces que dan soporte a JACC
WebSphere Application Server proporciona las interfaces PolicyConfigurationFactory y PolicyConfiguration que son similares a las interfaces PolicyConfigurationFactory y PolicyConfigurationde, de modo que la información que se almacena en el archivo de enlaces pueda propagarse al proveedor durante la instalación. La implementación de estas interfaces es opcional.
Interfaz de RoleConfiguration:
RoleConfiguration
- com.ibm.wsspi.security.authorization.RoleConfiguration
/**
* This interface is used to propagate the authorization table information
* in the binding file during application installation. Implementation of this interface is
* optional. When a JACC provider implements this interface during an application, both
* the policy and the authorization table information are propagated to the provider.
* If this is not implemented, only the policy information is propagated as per
* the JACC specification.
* @ibm-spi
* @ibm-support-class-A1
*/
public interface RoleConfiguration
/**
* Add the users to the role in RoleConfiguration.
* The role is created, if it does not exist in RoleConfiguration.
* @param role the role name.
* @param users the list of the user names.
* @exception RoleConfigurationException if the users cannot be added.
*/
public void addUsersToRole(String role, List users)
throws RoleConfigurationException
/**
* Remove the users to the role in RoleConfiguration.
* @param role the role name.
* @param users the list of the user names.
* @exception RoleConfigurationException if the users cannot be removed.
*/
public void removeUsersFromRole(String role, List users)
throws RoleConfigurationException
/**
* Add the groups to the role in RoleConfiguration.
* The role is created if it does not exist in RoleConfiguration.
* @param role the role name.
* @param groups the list of the group names.
* @exception RoleConfigurationException if the groups cannot be added.
*/
public void addGroupsToRole(String role, List groups)
throws RoleConfigurationException
/**
* Remove the groups to the role in RoleConfiguration.
* @param role the role name.
* @param groups the list of the group names.
* @exception RoleConfigurationException if the groups cannot be removed.
*/
public void removeGroupsFromRole( String role, List groups)
throws RoleConfigurationException
/**
* Add the everyone to the role in RoleConfiguration.
* The role is created if it does not exist in RoleConfiguration.
* @param role the role name.
* @exception RoleConfigurationException if the everyone cannot be added.
*/
public void addEveryoneToRole(String role)
throws RoleConfigurationException
/**
* Remove the everyone to the role in RoleConfiguration.
* @param role the role name.
* @exception RoleConfigurationException if the everyone cannot be removed.
*/
public void removeEveryoneFromRole( String role)
throws RoleConfigurationException
/**
* Add the all authenticated users to the role in RoleConfiguration.
* The role is created if it does not exist in RoleConfiguration.
* @param role the role name.
* @exception RoleConfigurationException if the authentication users cannot
* be added.
*/
public void addAuthenticatedUsersToRole(String role)
throws RoleConfigurationException
/**
* Remove the all authenticated users to the role in RoleConfiguration.
* @param role the role name.
* @exception RoleConfigurationException if the authentication users cannot
* be removed.
*/
public void removeAuthenticatedUsersFromRole( String role)
throws RoleConfigurationException
/**
* This commits the changes in Roleconfiguration.
* @exception RoleConfigurationException if the changes cannot be
* committed.
*/
public void commit( )
throws RoleConfigurationException
/**
* This deletes the RoleConfiguration from the RoleConfiguration Factory.
* @exception RoleConfigurationException if the RoleConfiguration cannot
* be deleted.
*/
public void delete( )
throws RoleConfigurationException
/**
* This returns the contextID of the RoleConfiguration.
* @exception RoleConfigurationException if the contextID cannot be
* obtained.
*/
public String getContextID( )
throws RoleConfigurationException
Interfaz de RoleConfigurationFactory:
RoleConfigurationFactory
- com.ibm.wsspi.security.authorization.RoleConfigurationFactory
/**
* This interface is used to instantiate the com.ibm.wsspi.security.authorization.RoleConfiguration
* objects based on the context identifier similar to the policy context identifier.
* Implementation of this interface is required only if the RoleConfiguration interface is implemented.
*
* @ibm-spi
* @ibm-support-class-A1
*/
public interface RoleConfigurationFactory
/**
* This gets a RoleConfiguration with contextID from the
* RoleConfigurationfactory. If the RoleConfiguration does not exist
* for the contextID in the RoleConfigurationFactory, a new
* RoleConfiguration with contextID is created in the
* RoleConfigurationFactory. The contextID is similar to
* PolicyContextID, but it does not contain the module name.
* If remove is true, the old RoleConfiguration is removed and a new
* RoleConfiguration is created, and returns with the contextID.
* @return the RoleConfiguration object for this contextID
* @param contextID the context ID of RoleConfiguration
* @param remove true or false
* @exception RoleConfigurationException if RoleConfiguration
* cannot be obtained.
**/
public abstract com.ibm.ws.security.policy.RoleConfiguration
getRoleConfiguration(String contextID, boolean remove)
throws RoleConfigurationException
Proveedor InitializeJACCProvider:
Cuando el proveedor implementa esta interfaz, la invocan todos los procesos cuando se puede utilizar el proveedor de JACC para las funciones de autorización. Todas las propiedades adicionales que se especifican durante la comprobación de autorización se pasan al proveedor. Por ejemplo, el proveedor puede utilizar esta información para inicializar el código de cliente para comunicarse con su servidor o repositorio. Se llama al método de limpieza durante el cierre del servidor para limpiar la configuración.
Declaración:
interfaz pública InitializeJACCProvider
Descripción:
Esta interfaz tiene dos métodos. El proveedor de JACC puede implementar la interfaz y entonces WebSphere Application Server la llama para inicializar este proveedor. El nombre de la clase de implementación se obtiene del valor de la propiedad del sistema initializeJACCProviderClassName.
InitializeJACCProvider
- com.ibm.wsspi.security.authorization.InitializeJACCProvider
/**
* Initializes the JACC provider
* @return 0 for success.
* @param props the custom properties that are included for this provider will
* pass to the implementation class.
* @exception Exception for any problems encountered.
**/
public int initialize(java.util.Properties props)
throws Exception
/**
* This method is for the JACC provider cleanup and will be called during a process stop.
**/
public void cleanup()