Package org.apache.catalina.security
Class SecurityUtil
- java.lang.Object
-
- org.apache.catalina.security.SecurityUtil
-
public final class SecurityUtil extends Object
This utility class associates aSubjectto the currentAccessControlContext. When aSecurityManageris used, the container will always associate the called thread with an AccessControlContext containing only the principal of the requested Servlet/Filter. This class uses reflection to invoke the methods.
-
-
Constructor Summary
Constructors Constructor Description SecurityUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voiddoAsPrivilege(String methodName, Filter targetObject)Perform work as a particularSubject.static voiddoAsPrivilege(String methodName, Filter targetObject, Class<?>[] targetType, Object[] targetArguments)Perform work as a particularSubject.static voiddoAsPrivilege(String methodName, Filter targetObject, Class<?>[] targetParameterTypes, Object[] targetParameterValues, Principal principal)Perform work as a particularSubject.static voiddoAsPrivilege(String methodName, Servlet targetObject)Perform work as a particularSubject.static voiddoAsPrivilege(String methodName, Servlet targetObject, Class<?>[] targetType, Object[] targetArguments)Perform work as a particularSubject.static voiddoAsPrivilege(String methodName, Servlet targetObject, Class<?>[] targetParameterTypes, Object[] targetArguments, Principal principal)Perform work as a particularSubject.static booleanisPackageProtectionEnabled()Return theSecurityManageronly if Security is enabled AND package protection mechanism is enabled.static voidremove(Object cachedObject)Remove the object from the cache.
-
-
-
Method Detail
-
doAsPrivilege
public static void doAsPrivilege(String methodName, Servlet targetObject) throws Exception
Perform work as a particularSubject. Here the work will be granted to anullsubject.- Parameters:
methodName- the method to apply the security restrictiontargetObject- theServleton which the method will be called.- Throws:
Exception- an execution error occurred
-
doAsPrivilege
public static void doAsPrivilege(String methodName, Servlet targetObject, Class<?>[] targetType, Object[] targetArguments) throws Exception
Perform work as a particularSubject. Here the work will be granted to anullsubject.- Parameters:
methodName- the method to apply the security restrictiontargetObject- theServleton which the method will be called.targetType-Classarray used to instantiate aMethodobject.targetArguments-Objectarray contains the runtime parameters instance.- Throws:
Exception- an execution error occurred
-
doAsPrivilege
public static void doAsPrivilege(String methodName, Servlet targetObject, Class<?>[] targetParameterTypes, Object[] targetArguments, Principal principal) throws Exception
Perform work as a particularSubject. Here the work will be granted to anullsubject.- Parameters:
methodName- the method to apply the security restrictiontargetObject- theServleton which the method will be called.targetParameterTypes-Classarray used to instantiate aMethodobject.targetArguments-Objectarray contains the runtime parameters instance.principal- thePrincipalto which the security privilege applies- Throws:
Exception- an execution error occurred
-
doAsPrivilege
public static void doAsPrivilege(String methodName, Filter targetObject) throws Exception
Perform work as a particularSubject. Here the work will be granted to anullsubject.- Parameters:
methodName- the method to apply the security restrictiontargetObject- theFilteron which the method will be called.- Throws:
Exception- an execution error occurred
-
doAsPrivilege
public static void doAsPrivilege(String methodName, Filter targetObject, Class<?>[] targetType, Object[] targetArguments) throws Exception
Perform work as a particularSubject. Here the work will be granted to anullsubject.- Parameters:
methodName- the method to apply the security restrictiontargetObject- theFilteron which the method will be called.targetType-Classarray used to instantiate aMethodobject.targetArguments-Objectarray contains the runtime parameters instance.- Throws:
Exception- an execution error occurred
-
doAsPrivilege
public static void doAsPrivilege(String methodName, Filter targetObject, Class<?>[] targetParameterTypes, Object[] targetParameterValues, Principal principal) throws Exception
Perform work as a particularSubject. Here the work will be granted to anullsubject.- Parameters:
methodName- the method to apply the security restrictiontargetObject- theFilteron which the method will be called.targetParameterTypes-Classarray used to instantiate aMethodobject.targetParameterValues-Objectarray contains the runtime parameters instance.principal- thePrincipalto which the security privilege applies- Throws:
Exception- an execution error occurred
-
remove
public static void remove(Object cachedObject)
Remove the object from the cache.- Parameters:
cachedObject- The object to remove
-
isPackageProtectionEnabled
public static boolean isPackageProtectionEnabled()
Return theSecurityManageronly if Security is enabled AND package protection mechanism is enabled.- Returns:
trueif package level protection is enabled
-
-