org.apache.jackrabbit.core.security.simple
Class SimpleLoginModule

java.lang.Object
  extended by org.apache.jackrabbit.core.security.authentication.AbstractLoginModule
      extended by org.apache.jackrabbit.core.security.simple.SimpleLoginModule
All Implemented Interfaces:
LoginModule

public class SimpleLoginModule
extends AbstractLoginModule

SimpleLoginModule...


Field Summary
 
Fields inherited from class org.apache.jackrabbit.core.security.authentication.AbstractLoginModule
adminId, anonymousId, callbackHandler, credentials, principal, principalProvider, sharedState, subject
 
Constructor Summary
SimpleLoginModule()
           
 
Method Summary
protected  void doInit(CallbackHandler callbackHandler, Session session, Map options)
          Implementations may set-up their own state.
protected  Authentication getAuthentication(Principal principal, Credentials creds)
          Retrieve the Authentication.
protected  Principal getPrincipal(Credentials credentials)
          Uses the configured PrincipalProvider to retrieve the principal.
protected  boolean impersonate(Principal principal, Credentials credentials)
          Handles the impersonation of given Credentials.
 
Methods inherited from class org.apache.jackrabbit.core.security.authentication.AbstractLoginModule
abort, authenticate, commit, getAdminId, getAnonymousId, getCredentials, getImpersonatorSubject, getPreAuthAttributeName, getPrincipalProvider, getPrincipals, getUserID, initialize, isAnonymous, isImpersonation, isInitialized, isPreAuthenticated, login, logout, setAdminId, setAnonymousId, setPrincipalProvider, supportsCredentials
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleLoginModule

public SimpleLoginModule()
Method Detail

doInit

protected void doInit(CallbackHandler callbackHandler,
                      Session session,
                      Map options)
               throws LoginException
Description copied from class: AbstractLoginModule
Implementations may set-up their own state.

Specified by:
doInit in class AbstractLoginModule
Parameters:
callbackHandler - as passed by LoginContext
session - to security-workspace of Jackrabbit
options - options from Logini config
Throws:
LoginException - in case initialization failes
See Also:
AbstractLoginModule.doInit(javax.security.auth.callback.CallbackHandler, javax.jcr.Session, java.util.Map)

impersonate

protected boolean impersonate(Principal principal,
                              Credentials credentials)
                       throws RepositoryException,
                              LoginException
Description copied from class: AbstractLoginModule
Handles the impersonation of given Credentials.

Specified by:
impersonate in class AbstractLoginModule
Parameters:
principal - Principal to impersonate.
credentials - Credentials used to create the impersonation subject.
Returns:
false, if there is no User to impersonate, true if impersonation is allowed
Throws:
RepositoryException - If another error occurs.
LoginException - If credentials don't allow to impersonate to principal.
See Also:
AbstractLoginModule.impersonate(java.security.Principal, javax.jcr.Credentials)

getAuthentication

protected Authentication getAuthentication(Principal principal,
                                           Credentials creds)
                                    throws RepositoryException
Description copied from class: AbstractLoginModule
Retrieve the Authentication.

Specified by:
getAuthentication in class AbstractLoginModule
Parameters:
principal - A principal.
creds - The Credentials used for the login.
Returns:
Authentication object for the given principal / credentials.
Throws:
RepositoryException - If an error occurs.
See Also:
AbstractLoginModule.getAuthentication(java.security.Principal, javax.jcr.Credentials)

getPrincipal

protected Principal getPrincipal(Credentials credentials)
Uses the configured PrincipalProvider to retrieve the principal. It takes the PrincipalProvider.getPrincipal(String) for the User-ID resolved by AbstractLoginModule.getUserID(Credentials), assuming that User-ID and the corresponding principal name are always identical.

Specified by:
getPrincipal in class AbstractLoginModule
Parameters:
credentials - Credentials for which the principal should be resolved.
Returns:
principal or null if the principal provider does not contain a user-principal with the given userID/principal name.
See Also:
AbstractLoginModule.getPrincipal(Credentials)


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.