com.netscape.certsrv.authentication
Interface IAuthSubsystem

All Superinterfaces:
ISubsystem

public interface IAuthSubsystem
extends ISubsystem

An interface that represents an authentication component

Version:
$Revision: 1211 $, $Date: 2010-08-18 10:15:37 -0700 (Wed, 18 Aug 2010) $

Field Summary
static java.lang.String CERTUSERDB_AUTHMGR_ID
          Constant for certificate based authentication manager ID.
static java.lang.String CERTUSERDB_PLUGIN_ID
          Constant for certificate based authentication plugin ID.
static java.lang.String CHALLENGE_AUTHMGR_ID
          Constant for challenge based authentication manager ID.
static java.lang.String CHALLENGE_PLUGIN_ID
          Constant for challenge based authentication plugin ID.
static java.lang.String CMCAUTH_AUTHMGR_ID
          Constant for CMC authentication manager ID.
static java.lang.String CMCAUTH_PLUGIN_ID
          Constant for CMC authentication plugin ID.
static java.lang.String ID
          Constant for auths.
static java.lang.String NULL_AUTHMGR_ID
          Constant for null authentication manager ID.
static java.lang.String NULL_PLUGIN_ID
          Constant for null authentication plugin ID.
static java.lang.String PASSWDUSERDB_AUTHMGR_ID
          Constant for password based authentication manager ID.
static java.lang.String PASSWDUSERDB_PLUGIN_ID
          Constant for password based authentication plugin ID.
static java.lang.String PROP_CLASS
          Constant for class.
static java.lang.String PROP_IMPL
          Constant for impl
static java.lang.String PROP_INSTANCE
          Constant for instance.
static java.lang.String PROP_PLUGIN
          Constant for pluginName.
static java.lang.String SSLCLIENTCERT_AUTHMGR_ID
          Constant for ssl client authentication manager ID.
static java.lang.String SSLCLIENTCERT_PLUGIN_ID
          Constant for ssl client authentication plugin ID.
 
Method Summary
 void add(java.lang.String name, IAuthManager authMgr)
          Adds (registers) the given authentication manager.
 IAuthToken authenticate(IAuthCredentials authCred, java.lang.String authMgrName)
          Authenticate the given credentials using the given manager name.
 void delete(java.lang.String name)
          Deletes (deregisters) the given authentication manager.
 IAuthManager get(java.lang.String name)
          Get an authentication manager interface for the given name.
 IAuthManager getAuthManager(java.lang.String name)
          Gets the Authentication manager instance of the specified name.
 IAuthManager getAuthManagerPlugin(java.lang.String name)
          Gets a single authentication manager plugin implementation
 AuthMgrPlugin getAuthManagerPluginImpl(java.lang.String name)
          Get an authentication manager plugin impl for the given name.
 java.util.Enumeration getAuthManagerPlugins()
          Gets an enumeration of authentication manager plugins.
 java.util.Enumeration getAuthManagers()
          Gets an enumeration of authentication managers registered to the authentication subsystem.
 java.lang.String[] getConfigParams(java.lang.String implName)
          Get configuration parameters for a authentication mgr plugin.
 java.util.Hashtable getInstances()
          Get a hashtable containing all authentication instances.
 java.util.Hashtable getPlugins()
          Get a hashtable containing all authentication plugins.
 java.lang.String[] getRequiredCreds(java.lang.String authMgrName)
          Gets the required credential attributes for the given authentication manager.
 void log(int level, java.lang.String msg)
          Log error message.
 
Methods inherited from interface com.netscape.certsrv.base.ISubsystem
getConfigStore, getId, init, setId, shutdown, startup
 

Field Detail

ID

static final java.lang.String ID
Constant for auths.

See Also:
Constant Field Values

PROP_CLASS

static final java.lang.String PROP_CLASS
Constant for class.

See Also:
Constant Field Values

PROP_IMPL

static final java.lang.String PROP_IMPL
Constant for impl

See Also:
Constant Field Values

PROP_PLUGIN

static final java.lang.String PROP_PLUGIN
Constant for pluginName.

See Also:
Constant Field Values

PROP_INSTANCE

static final java.lang.String PROP_INSTANCE
Constant for instance.

See Also:
Constant Field Values

PASSWDUSERDB_PLUGIN_ID

static final java.lang.String PASSWDUSERDB_PLUGIN_ID
Constant for password based authentication plugin ID.

See Also:
Constant Field Values

CERTUSERDB_PLUGIN_ID

static final java.lang.String CERTUSERDB_PLUGIN_ID
Constant for certificate based authentication plugin ID.

See Also:
Constant Field Values

CHALLENGE_PLUGIN_ID

static final java.lang.String CHALLENGE_PLUGIN_ID
Constant for challenge based authentication plugin ID.

See Also:
Constant Field Values

NULL_PLUGIN_ID

static final java.lang.String NULL_PLUGIN_ID
Constant for null authentication plugin ID.

See Also:
Constant Field Values

SSLCLIENTCERT_PLUGIN_ID

static final java.lang.String SSLCLIENTCERT_PLUGIN_ID
Constant for ssl client authentication plugin ID.

See Also:
Constant Field Values

PASSWDUSERDB_AUTHMGR_ID

static final java.lang.String PASSWDUSERDB_AUTHMGR_ID
Constant for password based authentication manager ID.

See Also:
Constant Field Values

CERTUSERDB_AUTHMGR_ID

static final java.lang.String CERTUSERDB_AUTHMGR_ID
Constant for certificate based authentication manager ID.

See Also:
Constant Field Values

CHALLENGE_AUTHMGR_ID

static final java.lang.String CHALLENGE_AUTHMGR_ID
Constant for challenge based authentication manager ID.

See Also:
Constant Field Values

NULL_AUTHMGR_ID

static final java.lang.String NULL_AUTHMGR_ID
Constant for null authentication manager ID.

See Also:
Constant Field Values

SSLCLIENTCERT_AUTHMGR_ID

static final java.lang.String SSLCLIENTCERT_AUTHMGR_ID
Constant for ssl client authentication manager ID.

See Also:
Constant Field Values

CMCAUTH_PLUGIN_ID

static final java.lang.String CMCAUTH_PLUGIN_ID
Constant for CMC authentication plugin ID.

See Also:
Constant Field Values

CMCAUTH_AUTHMGR_ID

static final java.lang.String CMCAUTH_AUTHMGR_ID
Constant for CMC authentication manager ID.

See Also:
Constant Field Values
Method Detail

authenticate

IAuthToken authenticate(IAuthCredentials authCred,
                        java.lang.String authMgrName)
                        throws EMissingCredential,
                               EInvalidCredentials,
                               EBaseException
Authenticate the given credentials using the given manager name.

Parameters:
authCred - The authentication credentials
authMgrName - The authentication manager name
Returns:
a authentication token.
Throws:
EMissingCredential - when missing credential during authentication
EInvalidCredentials - when the credential is invalid
EBaseException - If an error occurs during authentication.

getRequiredCreds

java.lang.String[] getRequiredCreds(java.lang.String authMgrName)
                                    throws EBaseException
Gets the required credential attributes for the given authentication manager.

Parameters:
authMgrName - The authentication manager name
Returns:
a Vector of required credential attribute names.
Throws:
EBaseException - If the required credential is missing

add

void add(java.lang.String name,
         IAuthManager authMgr)
Adds (registers) the given authentication manager.

Parameters:
name - The authentication manager name
authMgr - The authentication manager instance.

delete

void delete(java.lang.String name)
Deletes (deregisters) the given authentication manager.

Parameters:
name - The authentication manager name to delete.

getAuthManager

IAuthManager getAuthManager(java.lang.String name)
                            throws EBaseException
Gets the Authentication manager instance of the specified name.

Parameters:
name - The authentication manager's name.
Throws:
EBaseException - when internal error occurs.

getAuthManagers

java.util.Enumeration getAuthManagers()
Gets an enumeration of authentication managers registered to the authentication subsystem.

Returns:
a list of authentication managers

getAuthManagerPlugins

java.util.Enumeration getAuthManagerPlugins()
Gets an enumeration of authentication manager plugins.

Returns:
a list of authentication plugins

getAuthManagerPlugin

IAuthManager getAuthManagerPlugin(java.lang.String name)
Gets a single authentication manager plugin implementation

Parameters:
name - given authentication plugin name
Returns:
the given authentication plugin

getConfigParams

java.lang.String[] getConfigParams(java.lang.String implName)
                                   throws EAuthMgrPluginNotFound,
                                          EBaseException
Get configuration parameters for a authentication mgr plugin.

Parameters:
implName - The plugin name.
Returns:
configuration parameters for the given authentication manager plugin
Throws:
EAuthMgrPluginNotFound - If the authentication manager plugin is not found.
EBaseException - If an internal error occurred.

log

void log(int level,
         java.lang.String msg)
Log error message.

Parameters:
level - log level
msg - error message

getPlugins

java.util.Hashtable getPlugins()
Get a hashtable containing all authentication plugins.

Returns:
all authentication plugins.

getInstances

java.util.Hashtable getInstances()
Get a hashtable containing all authentication instances.

Returns:
all authentication instances.

get

IAuthManager get(java.lang.String name)
Get an authentication manager interface for the given name.

Parameters:
name - given authentication manager name.
Returns:
an authentication manager for the given manager name.

getAuthManagerPluginImpl

AuthMgrPlugin getAuthManagerPluginImpl(java.lang.String name)
Get an authentication manager plugin impl for the given name.

Parameters:
name - given authentication manager name.
Returns:
an authentication manager plugin