Class 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$
    Author:
    Thomas.Diesler@jboss.org
    • Constructor Detail

      • UsersLoginModule

        public UsersLoginModule()
    • Method Detail

      • initialize

        public void initialize​(Subject subject,
                               CallbackHandler callbackHandler,
                               Map<String,​?> sharedState,
                               Map<String,​?> 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.
      • 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