Javadoc updates.
This commit is contained in:
parent
d1efb4eeed
commit
206598172c
|
@ -59,10 +59,13 @@ import org.springframework.util.Assert;
|
||||||
* is returned. To override this
|
* is returned. To override this
|
||||||
* default, set the {@link #setForcePrincipalAsString} to <code>true</code>.
|
* default, set the {@link #setForcePrincipalAsString} to <code>true</code>.
|
||||||
* <p>
|
* <p>
|
||||||
* Caching is handled via the <code>UserDetails</code> object being placed in the {@link UserCache}. This
|
* Caching is handled by storing the <code>UserDetails</code> object being placed in the {@link UserCache}. This
|
||||||
* ensures that subsequent requests with the same username can be validated without needing to query the {@link
|
* ensures that subsequent requests with the same username can be validated without needing to query the {@link
|
||||||
* UserDetailsService}. It should be noted that if a user appears to present an incorrect password, the {@link
|
* UserDetailsService}. It should be noted that if a user appears to present an incorrect password, the {@link
|
||||||
* UserDetailsService} will be queried to confirm the most up-to-date password was used for comparison.</p>
|
* UserDetailsService} will be queried to confirm the most up-to-date password was used for comparison.
|
||||||
|
* Caching is only likely to be required for stateless applications. In a normal web application, for example,
|
||||||
|
* the <tt>SecurityContext</tt> is stored in the user's session and the user isn't reauthenticated on
|
||||||
|
* each request. The default cache implementation is therefore {@link NullUserCache}.
|
||||||
*
|
*
|
||||||
* @author Ben Alex
|
* @author Ben Alex
|
||||||
* @version $Id$
|
* @version $Id$
|
||||||
|
|
|
@ -16,17 +16,21 @@
|
||||||
package org.springframework.security.core.userdetails;
|
package org.springframework.security.core.userdetails;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides a cache of {@link UserDetails} objects.
|
* Provides a cache of {@link UserDetails} objects.
|
||||||
*
|
*
|
||||||
* <p>
|
* <p>
|
||||||
* Implementations should provide appropriate methods to set their cache
|
* Implementations should provide appropriate methods to set their cache parameters (e.g. time-to-live) and/or force
|
||||||
* parameters (e.g. time-to-live) and/or force removal of entities before their
|
* removal of entities before their normal expiration. These are not part of the <code>UserCache</code>
|
||||||
* normal expiration. These are not part of the <code>UserCache</code>
|
|
||||||
* interface contract because they vary depending on the type of caching
|
* interface contract because they vary depending on the type of caching
|
||||||
* system used (e.g. in-memory vs disk vs cluster vs hybrid).
|
* system used (e.g. in-memory vs disk vs cluster vs hybrid).
|
||||||
* </p>
|
* <p>
|
||||||
|
* Caching is generally only required in applications which do not maintain server-side state, such as remote clients
|
||||||
|
* or web services. The authentication credentials are then presented on each invocation and the overhead of accessing
|
||||||
|
* a database or other persistent storage mechanism to validate would be excessive. In this case, you would configure
|
||||||
|
* a cache to store the <tt>UserDetails</tt> information rather than loading it each time.
|
||||||
|
*
|
||||||
|
* @see {@link org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider}
|
||||||
*
|
*
|
||||||
* @author Ben Alex
|
* @author Ben Alex
|
||||||
* @version $Id$
|
* @version $Id$
|
||||||
|
@ -54,9 +58,10 @@ public interface UserCache {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Removes the specified user from the cache. The <code>username</code> is the key used to remove the user.
|
* Removes the specified user from the cache. The <code>username</code> is the key used to remove the user.
|
||||||
* If the user is not found, the method should simply return (not thrown an exception).<P>Some cache
|
* If the user is not found, the method should simply return (not thrown an exception).
|
||||||
* implementations may not support eviction from the cache, in which case they should provide appropriate
|
* <p>
|
||||||
* behaviour to alter the user in either its documentation, via an exception, or through a log message.</p>
|
* Some cache implementations may not support eviction from the cache, in which case they should provide appropriate
|
||||||
|
* behaviour to alter the user in either its documentation, via an exception, or through a log message.
|
||||||
*
|
*
|
||||||
* @param username to be evicted from the cache
|
* @param username to be evicted from the cache
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue