Class ChallengePhraseAuthentication

  • All Implemented Interfaces:
    AuthManager

    public class ChallengePhraseAuthentication
    extends java.lang.Object
    implements AuthManager
    Challenge phrase based authentication. Maps a certificate to the request in the internal database and further compares the challenge phrase with that from the EE input.

    Version:
    $Revision$, $Date$
    Author:
    cfu chrisho
    • Field Detail

      • logger

        public static org.slf4j.Logger logger
      • TOKEN_CERT_SERIAL

        public static final java.lang.String TOKEN_CERT_SERIAL
        See Also:
        Constant Field Values
      • CRED_CERT_SERIAL

        public static final java.lang.String CRED_CERT_SERIAL
        See Also:
        Constant Field Values
      • mRequiredCreds

        protected java.lang.String[] mRequiredCreds
      • mConfigParams

        protected static java.lang.String[] mConfigParams
      • mCertDB

        protected com.netscape.certsrv.dbs.certdb.ICertificateRepository mCertDB
      • CHALLENGE_PHRASE

        public static final java.lang.String CHALLENGE_PHRASE
        See Also:
        Constant Field Values
    • Constructor Detail

      • ChallengePhraseAuthentication

        public ChallengePhraseAuthentication()
    • Method Detail

      • setAuthenticationConfig

        public void setAuthenticationConfig​(AuthenticationConfig authenticationConfig)
      • init

        public void init​(java.lang.String name,
                         java.lang.String implName,
                         AuthManagerConfig config)
                  throws EBaseException
        initializes the ChallengePhraseAuthentication auth manager

        called by AuthSubsystem init() method, when initializing all available authentication managers.

        Specified by:
        init in interface AuthManager
        Parameters:
        name - The name of this authentication manager instance.
        implName - The name of the authentication manager plugin.
        config - The configuration store for this authentication manager.
        Throws:
        EBaseException - If an initialization error occurred.
      • getName

        public java.lang.String getName()
        Gets the name of this authentication manager.
        Specified by:
        getName in interface AuthManager
        Returns:
        the name of this authentication manager.
      • getImplName

        public java.lang.String getImplName()
        Gets the plugin name of authentication manager.
        Specified by:
        getImplName in interface AuthManager
        Returns:
        the name of the authentication manager plugin.
      • authenticate

        public com.netscape.certsrv.authentication.IAuthToken authenticate​(com.netscape.certsrv.authentication.IAuthCredentials authCred)
                                                                    throws com.netscape.certsrv.authentication.EMissingCredential,
                                                                           com.netscape.certsrv.authentication.EInvalidCredentials,
                                                                           EBaseException
        authenticates revocation of a certification by a challenge phrase

        called by other subsystems or their servlets to authenticate a revocation request

        Specified by:
        authenticate in interface AuthManager
        Parameters:
        authCred - - authentication credential that contains a Certificate to revoke
        Returns:
        the authentication token that contains the request id
        Throws:
        com.netscape.certsrv.authentication.EMissingCredential - If a required credential for this authentication manager is missing.
        com.netscape.certsrv.authentication.EInvalidCredentials - If credentials cannot be authenticated.
        EBaseException - If an internal error occurred.
        See Also:
        AuthToken
      • getRequiredCreds

        public java.lang.String[] getRequiredCreds()
        get the list of authentication credential attribute names required by this authentication manager. Generally used by the servlets that handle agent operations to authenticate its users. It calls this method to know which are the required credentials from the user (e.g. Javascript form data)
        Specified by:
        getRequiredCreds in interface AuthManager
        Returns:
        attribute names in Vector
      • getConfigParams

        public java.lang.String[] getConfigParams()
        get the list of configuration parameter names required by this authentication manager. Generally used by the Certificate Server Console to display the table for configuration purposes. ChallengePhraseAuthentication is currently not exposed in this case, so this method is not to be used.
        Specified by:
        getConfigParams in interface AuthManager
        Returns:
        configuration parameter names in Hashtable of Vectors where each hashtable entry's key is the substore name, value is a Vector of parameter names. If no substore, the parameter name is the Hashtable key itself, with value same as key.
      • shutdown

        public void shutdown()
        prepare this authentication manager for shutdown.
        Specified by:
        shutdown in interface AuthManager
      • getConfigStore

        public AuthManagerConfig getConfigStore()
        gets the configuretion substore used by this authentication manager
        Specified by:
        getConfigStore in interface AuthManager
        Returns:
        configuration store