java.lang.Object java.security.Permission java.security.BasicPermission java.lang.management.ManagementPermission
public final class ManagementPermission
使用 SecurityManager 运行的代码调用 Java 平台的管理接口中定义的方法时,SecurityManager 将要检查的权限。
下表提供了权限所允许的操作的简要说明,并讨论了授权代码权限的风险。
权限目标名称 | 权限所允许的操作 | 允许此权限所带来的风险 |
---|---|---|
control | 可以控制 Java 虚拟机的运行时特征,例如,设置 -verbose:gc 和 -verbose:class 标志,设置内存池的阈值,以及启用和禁用线程争用监视支持。 | 这允许攻击者控制 Java 虚拟机的运行时特征,会导致系统行为不正常。 |
monitor | 可以获取 Java 虚拟机的运行时信息,如线程堆栈跟踪、所有已加载类名称的列表以及 Java 虚拟机的输入参数。 | 这允许恶意代码监视运行时信息,从而发现系统漏洞。 |
程序员通常不会直接创建 ManagementPermission 对象。这些对象由安全策略代码根据读取的安全策略文件创建。
BasicPermission
,
Permission
,
Permissions
,
PermissionCollection
,
SecurityManager
,
序列化表格
构造方法摘要 | |
---|---|
ManagementPermission(String name) 构造具有指定名称的 ManagementPermission。 |
|
ManagementPermission(String name, String actions) 构造新的 ManagementPermission 对象。 |
方法摘要 |
---|
从类 java.security.BasicPermission 继承的方法 |
---|
equals, getActions, hashCode, implies, newPermissionCollection |
从类 java.security.Permission 继承的方法 |
---|
checkGuard, getName, toString |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public ManagementPermission(String name)
name
- 权限名称。必须为 "monitor" 或 "control"。
NullPointerException
- 如果
name
为
null
。
IllegalArgumentException
- 如果
name
为空或无效。
public ManagementPermission(String name, String actions) throws IllegalArgumentException
name
- 权限名称。必须为 "monitor" 或 "control"。
actions
- 必须为 null 或空字符串。
NullPointerException
- 如果
name
为
null
。
IllegalArgumentException
- 如果
name
为空或者参数无效。