org.apache.geronimo.security.realm.providers
Class LDAPLoginModule

java.lang.Object
  extended by org.apache.geronimo.security.realm.providers.LDAPLoginModule
All Implemented Interfaces:
LoginModule

public class LDAPLoginModule
extends Object
implements LoginModule

LDAPLoginModule is a login module using ldap as an authentication store.

This login module checks security credentials so the lifecycle methods must return true to indicate success or throw LoginException to indicate failure.


Field Summary
protected  DirContext context
           
static List<String> supportedOptions
           
 
Constructor Summary
LDAPLoginModule()
           
 
Method Summary
 boolean abort()
           
protected  boolean authenticate(String username, String password)
           
protected  void bindUser(DirContext context, String dn, String password)
           
protected  void close(DirContext context)
           
 boolean commit()
           
protected  String doRFC2254Encoding(String inputString)
           
protected  ArrayList<String> getRoles(DirContext context, String dn, String username, ArrayList<String> list)
           
 void initialize(Subject subject, CallbackHandler callbackHandler, Map sharedState, Map options)
           
 boolean login()
          This LoginModule is not to be ignored.
 boolean logout()
           
protected  DirContext open()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

supportedOptions

public static final List<String> supportedOptions

context

protected DirContext context
Constructor Detail

LDAPLoginModule

public LDAPLoginModule()
Method Detail

initialize

public void initialize(Subject subject,
                       CallbackHandler callbackHandler,
                       Map sharedState,
                       Map options)
Specified by:
initialize in interface LoginModule

login

public boolean login()
              throws LoginException
This LoginModule is not to be ignored. So, this method should never return false.

Specified by:
login in interface LoginModule
Returns:
true if authentication succeeds, or throw a LoginException such as FailedLoginException if authentication fails
Throws:
LoginException

commit

public boolean commit()
               throws LoginException
Specified by:
commit in interface LoginModule
Throws:
LoginException

abort

public boolean abort()
              throws LoginException
Specified by:
abort in interface LoginModule
Throws:
LoginException

logout

public boolean logout()
               throws LoginException
Specified by:
logout in interface LoginModule
Throws:
LoginException

close

protected void close(DirContext context)

authenticate

protected boolean authenticate(String username,
                               String password)
                        throws Exception
Throws:
Exception

getRoles

protected ArrayList<String> getRoles(DirContext context,
                                     String dn,
                                     String username,
                                     ArrayList<String> list)
                              throws NamingException
Throws:
NamingException

doRFC2254Encoding

protected String doRFC2254Encoding(String inputString)

bindUser

protected void bindUser(DirContext context,
                        String dn,
                        String password)
                 throws NamingException,
                        FailedLoginException
Throws:
NamingException
FailedLoginException

open

protected DirContext open()
                   throws NamingException
Throws:
NamingException


Copyright © 2003-2008 The Apache Geronimo development community. All Rights Reserved.