public class PolicySecurityController extends SecurityController
Policy in effect. When you use this security
controller, your securityDomain objects must be instances of CodeSource representing the
location from where you load your scripts. Any Java policy "grant" statements matching the URL
and certificate in code sources will apply to the scripts. If you specify any certificates within
your CodeSource objects, it is your responsibility to verify (or not) that the script
source files are signed in whatever implementation-specific way you're using.| Modifier and Type | Class and Description |
|---|---|
static class |
PolicySecurityController.SecureCaller |
| Constructor and Description |
|---|
PolicySecurityController() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
callWithDomain(java.lang.Object securityDomain,
Context cx,
Callable callable,
Scriptable scope,
Scriptable thisObj,
java.lang.Object[] args)
Call
Callable.call(Context cx, Scriptable scope, Scriptable thisObj, Object[] args)
of callable under restricted security domain where an action is allowed only if it is
allowed according to the Java stack on the moment of the execWithDomain call and
securityDomain. |
GeneratedClassLoader |
createClassLoader(java.lang.ClassLoader parent,
java.lang.Object securityDomain)
Get class loader-like object that can be used to define classes with the given security
context.
|
java.lang.Object |
getDynamicSecurityDomain(java.lang.Object securityDomain)
Get dynamic security domain that allows an action only if it is allowed by the current Java
stack and securityDomain.
|
java.lang.Class<?> |
getStaticSecurityDomainClassInternal() |
createLoader, execWithDomain, getStaticSecurityDomainClass, hasGlobal, initGlobalpublic java.lang.Class<?> getStaticSecurityDomainClassInternal()
getStaticSecurityDomainClassInternal in class SecurityControllerpublic GeneratedClassLoader createClassLoader(java.lang.ClassLoader parent, java.lang.Object securityDomain)
SecurityControllercreateClassLoader in class SecurityControllerparent - parent class loader to delegate search for classes not defined by the
class loader itselfsecurityDomain - some object specifying the security context of the code that is defined
by the returned class loader.public java.lang.Object getDynamicSecurityDomain(java.lang.Object securityDomain)
SecurityControllergetDynamicSecurityDomain in class SecurityControllerpublic java.lang.Object callWithDomain(java.lang.Object securityDomain,
Context cx,
Callable callable,
Scriptable scope,
Scriptable thisObj,
java.lang.Object[] args)
SecurityControllerCallable.call(Context cx, Scriptable scope, Scriptable thisObj, Object[] args)
of callable under restricted security domain where an action is allowed only if it is
allowed according to the Java stack on the moment of the execWithDomain call and
securityDomain. Any call to SecurityController.getDynamicSecurityDomain(Object) during execution
of callable.call(cx, scope, thisObj, args) should return a domain incorporate
restrictions imposed by securityDomain and Java stack on the moment of callWithDomain
invocation.
The method should always be overridden, it is not declared abstract for compatibility reasons.
callWithDomain in class SecurityController