The Permission class for reflective operations. A ReflectPermission is a
named permission and has no actions. The only name currently defined is
suppressAccessChecks, which allows suppressing the standard Java language access checks -- for public, default (package) access, protected, and private members -- performed by reflected objects at their point of use.
The following table provides a summary description of what the permission allows, and discusses the risks of granting code the permission.
Permission Target Name | What the Permission Allows | Risks of Allowing this Permission |
suppressAccessChecks | ability to access fields and invoke methods in a class. Note that this includes not only public, but protected and private fields and methods as well. | This is dangerous in that information (possibly confidential) and methods normally unavailable would be accessible to malicious code. |
@see java.security.Permission
@see java.security.BasicPermission
@see AccessibleObject
@see Field#get
@see Field#set
@see Method#invoke
@see Constructor#newInstance
@since 1.2