Software AG Products 10.5 | Administering Integration Server | Customizing Authentication Using JAAS | Writing a Custom JAAS Login Module for Integration Server | Extend SagAbstractLoginModule
 
Extend SagAbstractLoginModule
*Extend the com.softwareag.security.jaas.login.SagAbstractLoginModule
*Implement the following abstract methods:
initConfiguration()
authenticate(com.softwareag.security.jaas.login.SagCredentials
sagcredentials)
Integration Server collects the credentials and populates them in the com.softwareag.security.jaas.login.SagCredentials object. Integration Server then starts the JAAS login on the appropriate login context (for example, ISTransport). The JAAS framework looks in the configuration for the login modules associated with the login context. Each login module is called in turn for initialization and login; this is handled by the SagAbsractLoginModule, which delegates login module specific initialization and login to the derived class. For example, when JAAS login is invoked in your module, SagAbstractLoginModule invokes authenticate(sagcredentials) on your login module by passing in the com.softwareag.security.jaas.login.SagCredentials.
Your login module's authenticate method should retrieve the credentials from the SagCredentials object and perform the authentication (for more information, see the Javadoc for the SagCredentials and SagAbstractLoginModule).
If authentication is successful, the module populates SagCredentials with the correct username. If the current user name in the SagCredentials is not the one to be used, use the sagcredentials.setUserName(string) method to update the user name.