Class CertUserDBAuthentication

  • All Implemented Interfaces:
    AuthManager, ICertUserDBAuthentication

    public class CertUserDBAuthentication
    extends java.lang.Object
    implements AuthManager, ICertUserDBAuthentication
    Certificate server agent authentication. Maps a SSL client authenticate certificate to a user (agent) entry in the internal database.

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

      • logger

        public static org.slf4j.Logger logger
      • mRequiredCreds

        protected java.lang.String[] mRequiredCreds
      • mConfigParams

        protected static java.lang.String[] mConfigParams
    • Constructor Detail

      • CertUserDBAuthentication

        public CertUserDBAuthentication()
    • 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 CertUserDBAuthentication auth manager

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

        Specified by:
        init in interface AuthManager
        Parameters:
        owner - - The authentication subsystem that hosts this auth manager
        config - - The configuration store used by the authentication subsystem
        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 user(agent) by certificate

        called by other subsystems or their servlets to authenticate users (agents)

        Specified by:
        authenticate in interface AuthManager
        Parameters:
        authCred - - authentication credential that contains an usrgrp.Certificates of the user (agent)
        Returns:
        the authentication token that contains the following
        Throws:
        com.netscape.certsrv.base.EAuthsException - any authentication failure or insufficient credentials
        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, Certificates
      • 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. CertUserDBAuthentication 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