public class UserDatabaseRealm extends RealmBase
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.RealmBase.AllRolesModeLifecycle.SingleUse| Modifier and Type | Field and Description |
|---|---|
protected UserDatabase |
database
The
UserDatabase we will use to authenticate users and
identify associated roles. |
protected String |
resourceName
The global JNDI name of the
UserDatabase resource we will be
utilizing. |
allRolesMode, container, containerLog, realmPath, sm, stripRealmForGss, support, validate, x509UsernameRetriever, x509UsernameRetrieverClassNamemserverAFTER_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 and Description |
|---|
UserDatabaseRealm() |
| Modifier and Type | Method and Description |
|---|---|
void |
backgroundProcess()
Execute a periodic task, such as reloading, etc.
|
boolean |
getLocalJndiResource()
Determines whether this Realm is configured to obtain the associated
UserDatabase from the global JNDI context or a local (web
application) JNDI context. |
protected String |
getPassword(String username)
Return the password associated with the given principal's user name.
|
protected Principal |
getPrincipal(String username)
Return the Principal associated with the given user name.
|
String |
getResourceName() |
boolean |
hasRole(Wrapper wrapper,
Principal principal,
String role)
Return
true if the specified Principal has the specified
security role, within the context of this Realm; otherwise return
false. |
void |
setLocalJndiResource(boolean localJndiResource)
Configure whether this Realm obtains the associated
UserDatabase
from the global JNDI context or a local (web application) JNDI context. |
void |
setResourceName(String resourceName)
Set the global JNDI name of the
UserDatabase resource we
will be using. |
protected void |
startInternal()
Prepare for the beginning of active use of the public methods of this
component and implement the requirements of
LifecycleBase.startInternal(). |
protected void |
stopInternal()
Gracefully terminate the active use of the public methods of this
component and implement the requirements of
LifecycleBase.stopInternal(). |
addPropertyChangeListener, authenticate, authenticate, authenticate, authenticate, authenticate, authenticate, findSecurityConstraints, getAllRolesMode, getContainer, getCredentialHandler, getDigest, getDomainInternal, getObjectNameKeyProperties, getPrincipal, getPrincipal, getPrincipal, getRealmPath, getRealmSuffix, getRoles, getServer, getTransportGuaranteeRedirectStatus, getValidate, getX509UsernameRetrieverClassName, hasMessageDigest, hasResourcePermission, hasRoleInternal, hasUserDataPermission, initInternal, isStripRealmForGss, main, removePropertyChangeListener, setAllRolesMode, setContainer, setCredentialHandler, setRealmPath, setStripRealmForGss, setTransportGuaranteeRedirectStatus, setValidate, setX509UsernameRetrieverClassName, toStringdestroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregisteraddLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitisAvailableprotected volatile UserDatabase database
UserDatabase we will use to authenticate users and
identify associated roles.protected String resourceName
UserDatabase resource we will be
utilizing.public String getResourceName()
UserDatabase resource we
will be using.public void setResourceName(String resourceName)
UserDatabase resource we
will be using.resourceName - The new global JNDI namepublic boolean getLocalJndiResource()
UserDatabase from the global JNDI context or a local (web
application) JNDI context.true if a local JNDI context will be used, false
if the the global JNDI context will be usedpublic void setLocalJndiResource(boolean localJndiResource)
UserDatabase
from the global JNDI context or a local (web application) JNDI context.localJndiResource - true to use a local JNDI context,
false to use the global JNDI contextpublic boolean hasRole(Wrapper wrapper, Principal principal, String role)
true if the specified Principal has the specified
security role, within the context of this Realm; otherwise return
false. This implementation returns true if the
User has the role, or if any Group that the
User is a member of has the role.hasRole in interface RealmhasRole in class RealmBaseprincipal - Principal for whom the role is to be checkedrole - Security role to be checkedwrapper - wrapper context for evaluating roletrue if the specified Principal has the specified
security role, within the context of this Realm; otherwise return
false.public void backgroundProcess()
RealmBasebackgroundProcess in interface RealmbackgroundProcess in class RealmBaseprotected String getPassword(String username)
getPassword in class RealmBaseusername - The user nameprotected Principal getPrincipal(String username)
getPrincipal in class RealmBaseusername - The user nameprotected void startInternal()
throws LifecycleException
RealmBaseLifecycleBase.startInternal().startInternal in class RealmBaseLifecycleException - if this component detects a fatal error
that prevents this component from being usedprotected void stopInternal()
throws LifecycleException
LifecycleBase.stopInternal().stopInternal in class RealmBaseLifecycleException - if this component detects a fatal error
that needs to be reportedCopyright © 2000-2021 Apache Software Foundation. All Rights Reserved.