|
CoherenceTM v3.3 Copyright© 2000-2007 by Oracle Corporation |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.tangosol.util.Base
com.tangosol.net.security.Security
public abstract class Security
The Security class is used to assosiate client's identity with an action that requires access to protected clustered resources.
Consider the following code example:
Subject subject = Security.login(sPrincipal, acPassword); PrivilegedAction action = new PrivilegedAction() { public Object run() { return CacheFactory.getCache(sCacheName); } }; NamedCache cache = (NamedCache) Security.runAs(subject, action);The implementation of the run() method in PrivilegedAction does not have to be an immediate CacheFactory related call; it could be any sequence of code. Any calls that made within that context will be excecuted with the same privileges.
If a call that accesses a protected clustered resource is made outside of the "runAs" scope, the AccessController will instantiate and use a CallbackHandler specified in the tangosol-coherence.xml descriptor. If it is not specified and security is enabled the resource access request will be rejected.
A SecurityException is thrown if the caller does not have permission to call a particular method; the controlling permissions are instances of javax.security.auth.AuthPermission with corresponding target names such as "coherence.login" or "coherence.runAs".
Constructor Summary | |
---|---|
Security()
|
Method Summary | |
---|---|
static Subject |
login(CallbackHandler handler)
Perform the authentication. |
static Subject |
login(String sName,
char[] acPassword)
Perform the authentication. |
static Object |
runAs(Subject subject,
PrivilegedAction action)
Executes a privileged action on behalf of the user identity. |
static Object |
runAs(Subject subject,
PrivilegedExceptionAction action)
Executes a privileged exception action on behalf of the user identity. |
Constructor Detail |
---|
public Security()
Method Detail |
---|
public static Subject login(String sName, char[] acPassword)
sName
- the user name to use for authenticationacPassword
- the password to use for authentication
SecurityException
- if authentication failspublic static Subject login(CallbackHandler handler)
handler
- the CallbackHandler to be used for authentication
SecurityException
- if authentication failspublic static Object runAs(Subject subject, PrivilegedAction action)
subject
- the identity to perform action on behalf ofaction
- the privileged action to performpublic static Object runAs(Subject subject, PrivilegedExceptionAction action) throws PrivilegedActionException
subject
- the identity to perform action on behalf ofaction
- the privileged exception action to perform
PrivilegedActionException
- if the specified action's run method
threw a checked exception
|
CoherenceTM v3.3 Copyright© 2000-2007 by Oracle Corporation |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |