Package org.apache.catalina.realm
Class UserDatabaseRealm
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.realm.RealmBase
org.apache.catalina.realm.UserDatabaseRealm
- All Implemented Interfaces:
- MBeanRegistration,- Contained,- GSSRealm,- JmxEnabled,- Lifecycle,- Realm
Implementation of 
Realm that is based on an implementation of UserDatabase made
 available through the JNDI resources configured for this instance of Catalina. Set the resourceName
 parameter to the JNDI resources name for the configured instance of UserDatabase that we should consult.- Since:
- 4.1
- Author:
- Craig R. McClanahan
- 
Nested Class SummaryNested ClassesNested classes/interfaces inherited from class org.apache.catalina.realm.RealmBaseRealmBase.AllRolesModeNested classes/interfaces inherited from interface org.apache.catalina.LifecycleLifecycle.SingleUse
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected UserDatabaseTheUserDatabasewe will use to authenticate users and identify associated roles.protected static final StringDeprecated.This will be removed in Tomcat 9 onwards.protected StringThe global JNDI name of theUserDatabaseresource we will be utilizing.Fields inherited from class org.apache.catalina.realm.RealmBaseallRolesMode, container, containerLog, realmPath, sm, stripRealmForGss, support, USER_ATTRIBUTES_DELIMITER, USER_ATTRIBUTES_WILDCARD, userAttributes, userAttributesList, validate, x509UsernameRetriever, x509UsernameRetrieverClassNameFields inherited from class org.apache.catalina.util.LifecycleMBeanBasemserverFields inherited from interface org.apache.catalina.LifecycleAFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidCallsMemoryUserDatabase.backgroundProcess()if the Realm is configured with a MemoryUserDatabase.booleanDetermines whether this Realm is configured to obtain the associatedUserDatabasefrom the global JNDI context or a local (web application) JNDI context.protected StringgetName()Deprecated.protected StringgetPassword(String username) Get the password for the specified user.protected PrincipalgetPrincipal(String username) Get the principal associated with the specified user.voidsetLocalJndiResource(boolean localJndiResource) Configure whether this Realm obtains the associatedUserDatabasefrom the global JNDI context or a local (web application) JNDI context.voidsetResourceName(String resourceName) Set the global JNDI name of theUserDatabaseresource we will be using.protected voidPrepare for the beginning of active use of the public methods of this component and implement the requirements ofLifecycleBase.startInternal().protected voidGracefully terminate the active use of the public methods of this component and implement the requirements ofLifecycleBase.stopInternal().Methods inherited from class org.apache.catalina.realm.RealmBaseaddPropertyChangeListener, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, Digest, findSecurityConstraints, getAllRolesMode, getContainer, getCredentialHandler, getDigest, getDigest, getDomainInternal, getObjectNameKeyProperties, getPrincipal, getPrincipal, getPrincipal, getRealmPath, getRealmSuffix, getRoles, getServer, getTransportGuaranteeRedirectStatus, getUserAttributes, getValidate, getX509UsernameRetrieverClassName, hasMessageDigest, hasResourcePermission, hasRole, hasRoleInternal, hasUserDataPermission, initInternal, isAvailable, isStripRealmForGss, main, parseUserAttributes, removePropertyChangeListener, setAllRolesMode, setContainer, setCredentialHandler, setRealmPath, setStripRealmForGss, setTransportGuaranteeRedirectStatus, setUserAttributes, setValidate, setX509UsernameRetrieverClassName, toStringMethods inherited from class org.apache.catalina.util.LifecycleMBeanBasedestroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregisterMethods inherited from class org.apache.catalina.util.LifecycleBaseaddLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
- 
Field Details- 
databaseTheUserDatabasewe will use to authenticate users and identify associated roles.
- 
nameDeprecated.This will be removed in Tomcat 9 onwards.Descriptive information about this Realm implementation.- See Also:
 
- 
resourceNameThe global JNDI name of theUserDatabaseresource we will be utilizing.
 
- 
- 
Constructor Details- 
UserDatabaseRealmpublic UserDatabaseRealm()
 
- 
- 
Method Details- 
getResourceName- Returns:
- the global JNDI name of the UserDatabaseresource we will be using.
 
- 
setResourceNameSet the global JNDI name of theUserDatabaseresource we will be using.- Parameters:
- resourceName- The new global JNDI name
 
- 
getLocalJndiResourcepublic boolean getLocalJndiResource()Determines whether this Realm is configured to obtain the associatedUserDatabasefrom the global JNDI context or a local (web application) JNDI context.- Returns:
- trueif a local JNDI context will be used,- falseif the the global JNDI context will be used
 
- 
setLocalJndiResourcepublic void setLocalJndiResource(boolean localJndiResource) Configure whether this Realm obtains the associatedUserDatabasefrom the global JNDI context or a local (web application) JNDI context.- Parameters:
- localJndiResource-- trueto use a local JNDI context,- falseto use the global JNDI context
 
- 
getNameDeprecated.
- 
backgroundProcesspublic void backgroundProcess()CallsMemoryUserDatabase.backgroundProcess()if the Realm is configured with a MemoryUserDatabase.- Specified by:
- backgroundProcessin interface- Realm
- Overrides:
- backgroundProcessin class- RealmBase
 
- 
getPasswordDescription copied from class:RealmBaseGet the password for the specified user.- Specified by:
- getPasswordin class- RealmBase
- Parameters:
- username- The user name
- Returns:
- the password associated with the given principal's user name.
 
- 
getPrincipalDescription copied from class:RealmBaseGet the principal associated with the specified user.- Specified by:
- getPrincipalin class- RealmBase
- Parameters:
- username- The user name
- Returns:
- the Principal associated with the given user name.
 
- 
startInternalDescription copied from class:RealmBasePrepare for the beginning of active use of the public methods of this component and implement the requirements ofLifecycleBase.startInternal().- Overrides:
- startInternalin class- RealmBase
- Throws:
- LifecycleException- if this component detects a fatal error that prevents this component from being used
 
- 
stopInternalDescription copied from class:RealmBaseGracefully terminate the active use of the public methods of this component and implement the requirements ofLifecycleBase.stopInternal().- Overrides:
- stopInternalin class- RealmBase
- Throws:
- LifecycleException- if this component detects a fatal error that needs to be reported
 
 
-