org.jboss.security.auth.spi
Class ProxyLoginModule

java.lang.Object
  extended byorg.jboss.security.auth.spi.ProxyLoginModule
All Implemented Interfaces:
javax.security.auth.spi.LoginModule

public class ProxyLoginModule
extends java.lang.Object
implements javax.security.auth.spi.LoginModule

A proxy LoginModule that loads a delegate LoginModule using the current thread context class loader. The purpose of this module is to work around the current JAAS class loader limitation that requires LoginModules to be on the classpath. Some LoginModules use core JBoss classes that would have to be moved into the jboss-jaas.jar and packaging becomes a mess. Instead, these LoginModules are left in the jbosssx.jar and the ProxyLoginModule is used to bootstrap the non-classpath LoginModule.


Constructor Summary
ProxyLoginModule()
           
 
Method Summary
 boolean abort()
           
 boolean commit()
           
 void initialize(javax.security.auth.Subject subject, javax.security.auth.callback.CallbackHandler callbackHandler, java.util.Map sharedState, java.util.Map options)
          Initialize this LoginModule.
 boolean login()
          Perform the login.
 boolean logout()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProxyLoginModule

public ProxyLoginModule()
Method Detail

initialize

public void initialize(javax.security.auth.Subject subject,
                       javax.security.auth.callback.CallbackHandler callbackHandler,
                       java.util.Map sharedState,
                       java.util.Map options)
Initialize this LoginModule. This method loads the LoginModule specified by the moduleName option using the current thread context class loader and then delegates the initialize call to it.

Specified by:
initialize in interface javax.security.auth.spi.LoginModule

login

public boolean login()
              throws javax.security.auth.login.LoginException
Perform the login. If either the moduleName option was not specified or the module could not be loaded in initalize(), this method throws a LoginException.

Specified by:
login in interface javax.security.auth.spi.LoginModule
Throws:
LoginException, - throw in the delegate login module failed.
javax.security.auth.login.LoginException

commit

public boolean commit()
               throws javax.security.auth.login.LoginException
Specified by:
commit in interface javax.security.auth.spi.LoginModule
Throws:
javax.security.auth.login.LoginException

abort

public boolean abort()
              throws javax.security.auth.login.LoginException
Specified by:
abort in interface javax.security.auth.spi.LoginModule
Throws:
javax.security.auth.login.LoginException

logout

public boolean logout()
               throws javax.security.auth.login.LoginException
Specified by:
logout in interface javax.security.auth.spi.LoginModule
Throws:
javax.security.auth.login.LoginException