org.jboss.security.auth.spi
Class UsersLoginModule

java.lang.Object
  extended by org.jboss.security.auth.spi.AbstractServerLoginModule
      extended by org.jboss.security.auth.spi.UsernamePasswordLoginModule
          extended by org.jboss.security.auth.spi.UsersLoginModule
All Implemented Interfaces:
LoginModule

public class UsersLoginModule
extends UsernamePasswordLoginModule

A simple properties file based login module that consults a Java Properties formatted text files for username to password("users.properties") mapping. The name of the properties file may be overriden by the usersProperties option. The properties file are loaded during initialization using the thread context class loader. This means that these files can be placed into the J2EE deployment jar or the JBoss config directory. The users.properties file uses a format: username1=password1 username2=password2 ... to define all valid usernames and their corresponding passwords.

Version:
$Revision: 1.1.6.1 $
Author:
Thomas.Diesler@jboss.org

Field Summary
 
Fields inherited from class org.jboss.security.auth.spi.AbstractServerLoginModule
callbackHandler, log, loginOk, options, principalClassName, sharedState, subject, unauthenticatedIdentity, useFirstPass
 
Constructor Summary
UsersLoginModule()
           
 
Method Summary
protected  Group[] getRoleSets()
          Return a group Roles with no members
protected  String getUsersPassword()
          Get the expected password for the current username available via the getUsername() method.
 void initialize(Subject subject, CallbackHandler callbackHandler, Map sharedState, Map options)
          Initialize this LoginModule.
 boolean login()
          Method to authenticate a Subject (phase 1).
 
Methods inherited from class org.jboss.security.auth.spi.UsernamePasswordLoginModule
createPasswordHash, getCredentials, getIdentity, getUnauthenticatedIdentity, getUsername, getUsernameAndPassword, getValidateError, setValidateError, validatePassword
 
Methods inherited from class org.jboss.security.auth.spi.AbstractServerLoginModule
abort, commit, createGroup, createIdentity, getUseFirstPass, logout
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UsersLoginModule

public UsersLoginModule()
Method Detail

initialize

public void initialize(Subject subject,
                       CallbackHandler callbackHandler,
                       Map sharedState,
                       Map options)
Initialize this LoginModule.

Specified by:
initialize in interface LoginModule
Overrides:
initialize in class UsernamePasswordLoginModule
Parameters:
options - the login module option map. Supported options include: usersProperties: The name of the properties resource containing user/passwords. The default is "users.properties"
subject - the Subject to update after a successful login.
callbackHandler - the CallbackHandler that will be used to obtain the the user identity and credentials.
sharedState - a Map shared between all configured login module instances

login

public boolean login()
              throws LoginException
Method to authenticate a Subject (phase 1). This validates that the users properties file were loaded and then calls super.login to perform the validation of the password.

Specified by:
login in interface LoginModule
Overrides:
login in class UsernamePasswordLoginModule
Throws:
LoginException - thrown if the users or roles properties files were not found or the super.login method fails.

getRoleSets

protected Group[] getRoleSets()
                       throws LoginException
Return a group Roles with no members

Specified by:
getRoleSets in class AbstractServerLoginModule
Returns:
Group[] containing the sets of roles
Throws:
LoginException

getUsersPassword

protected String getUsersPassword()
Description copied from class: UsernamePasswordLoginModule
Get the expected password for the current username available via the getUsername() method. This is called from within the login() method after the CallbackHandler has returned the username and candidate password.

Specified by:
getUsersPassword in class UsernamePasswordLoginModule
Returns:
the valid password String


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.