org.apache.jetspeed.security.impl
Class DefaultLoginModule

java.lang.Object
  extended by org.apache.jetspeed.security.impl.DefaultLoginModule
All Implemented Interfaces:
LoginModule
Direct Known Subclasses:
JBossLoginModule

public class DefaultLoginModule
extends Object
implements LoginModule

LoginModule implementation that authenticates a user against a relational database. OJB based implementation.

When a user is successfully authenticated, the user principal are added to the current subject.

The LoginModule also recognizes the debug option.

Configuration files should provide:


 Jetspeed {
   org.apache.jetspeed.security.impl.DefaultLoginModule required debug=true;
 };
 

Author:
David Le Strat

Field Summary
protected  CallbackHandler callbackHandler
          A CallbackHandler for communicating with the end user (prompting for usernames and passwords, for example).
protected  boolean commitSuccess
          The commit status.
protected  boolean debug
          LoginModule debug mode is turned off by default.
protected  Map options
          Options specified in the login Configuration for this particular LoginModule.
protected  String portalUserRole
          The portal user role.
protected  Map sharedState
          State shared with other configured LoginModules.
protected  Subject subject
          The Subject to be authenticated.
protected  boolean success
          The authentication status.
protected  org.apache.jetspeed.security.UserManager ums
          InternalUserPrincipal manager service.
protected  String username
          The user name.
 
Constructor Summary
  DefaultLoginModule()
          The default login module constructor.
protected DefaultLoginModule(org.apache.jetspeed.security.UserManager userManager)
           
protected DefaultLoginModule(org.apache.jetspeed.security.UserManager userManager, String portalUserRole)
          Create a new login module that uses the given user manager.
 
Method Summary
 boolean abort()
           
 boolean commit()
           
protected  void commitPrincipals(Subject subject, org.apache.jetspeed.security.User user)
          Default setup of the logged on Subject Principals for Tomcat
protected  Principal getUserPrincipal(org.apache.jetspeed.security.User user)
           
protected  List getUserRoles(org.apache.jetspeed.security.User user)
           
 void initialize(Subject subject, CallbackHandler callbackHandler, Map sharedState, Map options)
           
 boolean login()
           
 boolean logout()
           
protected  void refreshProxy()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

debug

protected boolean debug

LoginModule debug mode is turned off by default.


success

protected boolean success

The authentication status.


commitSuccess

protected boolean commitSuccess

The commit status.


subject

protected Subject subject

The Subject to be authenticated.


callbackHandler

protected CallbackHandler callbackHandler

A CallbackHandler for communicating with the end user (prompting for usernames and passwords, for example).


sharedState

protected Map sharedState

State shared with other configured LoginModules.


options

protected Map options

Options specified in the login Configuration for this particular LoginModule.


ums

protected org.apache.jetspeed.security.UserManager ums

InternalUserPrincipal manager service.


portalUserRole

protected String portalUserRole
The portal user role.


username

protected String username

The user name.

Constructor Detail

DefaultLoginModule

public DefaultLoginModule()

The default login module constructor.


DefaultLoginModule

protected DefaultLoginModule(org.apache.jetspeed.security.UserManager userManager,
                             String portalUserRole)
Create a new login module that uses the given user manager.

Parameters:
userManager - the user manager to use
portalUserRole - the portal user role to use

DefaultLoginModule

protected DefaultLoginModule(org.apache.jetspeed.security.UserManager userManager)
Method Detail

abort

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

refreshProxy

protected void refreshProxy()

commit

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

login

public boolean login()
              throws LoginException
Specified by:
login in interface LoginModule
Throws:
LoginException
See Also:
LoginModule.login()

logout

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

initialize

public void initialize(Subject subject,
                       CallbackHandler callbackHandler,
                       Map sharedState,
                       Map options)
Specified by:
initialize in interface LoginModule
See Also:
LoginModule.initialize(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler, java.util.Map, java.util.Map)

getUserPrincipal

protected Principal getUserPrincipal(org.apache.jetspeed.security.User user)

getUserRoles

protected List getUserRoles(org.apache.jetspeed.security.User user)

commitPrincipals

protected void commitPrincipals(Subject subject,
                                org.apache.jetspeed.security.User user)
Default setup of the logged on Subject Principals for Tomcat

Parameters:
subject -
user -


Copyright © 1999-2007 Apache Software Foundation. All Rights Reserved.