| java.lang.Object org.apache.catalina.realm.RealmBase org.apache.catalina.realm.MemoryRealm
All known Subclasses: org.apache.catalina.realm.JAASMemoryLoginModule,
MemoryRealm | public class MemoryRealm extends RealmBase (Code) | | Simple implementation of Realm that reads an XML file to configure
the valid users, passwords, and roles. The file format (and default file
location) are identical to those currently supported by Tomcat 3.X.
IMPLEMENTATION NOTE: It is assumed that the in-memory
collection representing our defined users (and their roles) is initialized
at application startup and never modified again. Therefore, no thread
synchronization is performed around accesses to the principals collection.
author: Craig R. McClanahan version: $Revision: 1.4 $ $Date: 2004/02/27 14:58:45 $ |
Field Summary | |
final protected String | info Descriptive information about this Realm implementation. | final protected static String | name Descriptive information about this Realm implementation. |
Method Summary | |
void | addUser(String username, String password, String roles) Add a new user to the in-memory database. | public Principal | authenticate(String username, String credentials) Return the Principal associated with the specified username and
credentials, if there is one; otherwise return null . | protected synchronized Digester | getDigester() Return a configured Digester to use for processing
the XML input file, creating a new one if necessary. | public String | getInfo() Return descriptive information about this Realm implementation and
the corresponding version number, in the format
<description>/<version> . | protected String | getName() Return a short name for this Realm implementation. | protected String | getPassword(String username) Return the password associated with the given principal's user name. | public String | getPathname() Return the pathname of our XML file containing user definitions. | protected Principal | getPrincipal(String username) Return the Principal associated with the given user name. | public void | setPathname(String pathname) Set the pathname of our XML file containing user definitions. | public synchronized void | start() Prepare for active use of the public methods of this Component. | public synchronized void | stop() Gracefully shut down active use of the public methods of this Component. |
info | final protected String info(Code) | | Descriptive information about this Realm implementation.
|
name | final protected static String name(Code) | | Descriptive information about this Realm implementation.
|
addUser | void addUser(String username, String password, String roles)(Code) | | Add a new user to the in-memory database.
Parameters: username - User's username Parameters: password - User's password (clear text) Parameters: roles - Comma-delimited set of roles associated with this user |
authenticate | public Principal authenticate(String username, String credentials)(Code) | | Return the Principal associated with the specified username and
credentials, if there is one; otherwise return null .
Parameters: username - Username of the Principal to look up Parameters: credentials - Password or other credentials to use inauthenticating this username |
getDigester | protected synchronized Digester getDigester()(Code) | | Return a configured Digester to use for processing
the XML input file, creating a new one if necessary.
|
getInfo | public String getInfo()(Code) | | Return descriptive information about this Realm implementation and
the corresponding version number, in the format
<description>/<version> .
|
getName | protected String getName()(Code) | | Return a short name for this Realm implementation.
|
getPassword | protected String getPassword(String username)(Code) | | Return the password associated with the given principal's user name.
|
getPathname | public String getPathname()(Code) | | Return the pathname of our XML file containing user definitions.
|
getPrincipal | protected Principal getPrincipal(String username)(Code) | | Return the Principal associated with the given user name.
|
setPathname | public void setPathname(String pathname)(Code) | | Set the pathname of our XML file containing user definitions. If a
relative pathname is specified, it is resolved against "catalina.base".
Parameters: pathname - The new pathname |
start | public synchronized void start() throws LifecycleException(Code) | | Prepare for active use of the public methods of this Component.
exception: LifecycleException - if this component detects a fatal errorthat prevents it from being started |
stop | public synchronized void stop() throws LifecycleException(Code) | | Gracefully shut down active use of the public methods of this Component.
exception: LifecycleException - if this component detects a fatal errorthat needs to be reported |
Methods inherited from org.apache.catalina.realm.RealmBase | final public static String Digest(String credentials, String algorithm)(Code)(Java Doc) public void addLifecycleListener(LifecycleListener listener)(Code)(Java Doc) public void addPropertyChangeListener(PropertyChangeListener listener)(Code)(Java Doc) public Principal authenticate(String username, String credentials)(Code)(Java Doc) public Principal authenticate(String username, byte[] credentials)(Code)(Java Doc) public Principal authenticate(String username, String clientDigest, String nOnce, String nc, String cnonce, String qop, String realm, String md5a2)(Code)(Java Doc) public Principal authenticate(X509Certificate certs)(Code)(Java Doc) public void destroy()(Code)(Java Doc) protected String digest(String credentials)(Code)(Java Doc) public LifecycleListener[] findLifecycleListeners()(Code)(Java Doc) public SecurityConstraint[] findSecurityConstraints(HttpRequest request, Context context)(Code)(Java Doc) public Container getContainer()(Code)(Java Doc) public ObjectName getController()(Code)(Java Doc) public int getDebug()(Code)(Java Doc) public String getDigest()(Code)(Java Doc) protected String getDigest(String username, String realmName)(Code)(Java Doc) public String getDomain()(Code)(Java Doc) public String getInfo()(Code)(Java Doc) abstract protected String getName()(Code)(Java Doc) public ObjectName getObjectName()(Code)(Java Doc) abstract protected String getPassword(String username)(Code)(Java Doc) abstract protected Principal getPrincipal(String username)(Code)(Java Doc) public String getType()(Code)(Java Doc) public boolean getValidate()(Code)(Java Doc) protected boolean hasMessageDigest()(Code)(Java Doc) public boolean hasResourcePermission(HttpRequest request, HttpResponse response, SecurityConstraint[] constraints, Context context) throws IOException(Code)(Java Doc) public boolean hasRole(Principal principal, String role)(Code)(Java Doc) public boolean hasUserDataPermission(HttpRequest request, HttpResponse response, SecurityConstraint[] constraints) throws IOException(Code)(Java Doc) public void init()(Code)(Java Doc) protected void log(String message)(Code)(Java Doc) protected void log(String message, Throwable throwable)(Code)(Java Doc) public static void main(String args)(Code)(Java Doc) public void postDeregister()(Code)(Java Doc) public void postRegister(Boolean registrationDone)(Code)(Java Doc) public void preDeregister() throws Exception(Code)(Java Doc) public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception(Code)(Java Doc) public void removeLifecycleListener(LifecycleListener listener)(Code)(Java Doc) public void removePropertyChangeListener(PropertyChangeListener listener)(Code)(Java Doc) public void setContainer(Container container)(Code)(Java Doc) public void setController(ObjectName controller)(Code)(Java Doc) public void setDebug(int debug)(Code)(Java Doc) public void setDigest(String digest)(Code)(Java Doc) public void setValidate(boolean validate)(Code)(Java Doc) public void start() throws LifecycleException(Code)(Java Doc) public void stop() throws LifecycleException(Code)(Java Doc)
|
|
|