org.jboss.security.auth.spi
Class UsersLoginModule
java.lang.Object
org.jboss.security.auth.spi.AbstractServerLoginModule (src)
org.jboss.security.auth.spi.UsernamePasswordLoginModule (src)
org.jboss.security.auth.spi.UsersLoginModule
- All Implemented Interfaces:
- javax.security.auth.spi.LoginModule
- public class UsersLoginModule
- extends UsernamePasswordLoginModule (src)
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.
Method Summary |
protected java.security.acl.Group[] |
getRoleSets()
Return a group Roles with no members |
protected java.lang.String |
getUsersPassword()
Get the expected password for the current username available via
the getUsername() method. |
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()
Method to authenticate a Subject (phase 1). |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
UsersLoginModule
public UsersLoginModule()
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.
- Specified by:
initialize
in interface javax.security.auth.spi.LoginModule
- Overrides:
initialize
in class UsernamePasswordLoginModule (src)
- 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"
login
public boolean login()
throws javax.security.auth.login.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 javax.security.auth.spi.LoginModule
- Overrides:
login
in class UsernamePasswordLoginModule (src)
- Throws:
javax.security.auth.login.LoginException
- thrown if the users or roles properties files
were not found or the super.login method fails.
getRoleSets
protected java.security.acl.Group[] getRoleSets()
throws javax.security.auth.login.LoginException
- Return a group Roles with no members
- Specified by:
getRoleSets
in class AbstractServerLoginModule (src)
- Returns:
- Group[] containing the sets of roles
- Throws:
javax.security.auth.login.LoginException
getUsersPassword
protected java.lang.String getUsersPassword()
- Description copied from class:
UsernamePasswordLoginModule (src)
- 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 (src)
- Returns:
- the valid password String