模块 jdk.attach

类 AttachPermission

所有已实现的接口:
Serializable , Guard

public final class AttachPermission extends BasicPermission
SecurityManager 设置时,这是在代码调用 VirtualMachine.attach 附加到目标虚拟机时将检查的权限。创建 AttachProvider 时也会检查此权限。

AttachPermission 对象包含一个名称(也称为“目标名称”)但没有操作列表;您要么拥有命名权限,要么没有。下表提供了权限允许的摘要说明,并讨论了授予代码权限的风险。

表格显示权限目标名称、权限允许的内容以及相关风险
权限目标名称 权限允许什么 允许此权限的风险
附加虚拟机 能够附加到另一个 Java 虚拟机并将代理程序加载到该 VM 中。 这允许攻击者控制目标 VM,这可能会导致它行为不端。
创建附加提供者 能够创建 AttachProvider 实例。 这允许攻击者创建一个 AttachProvider,它可能被用来附加到其他 Java 虚拟机。

程序员通常不会直接创建 AttachPermission 对象。相反,它们是由基于读取安全策略文件的安全策略代码创建的。

参见:
  • 构造方法详细信息

    • AttachPermission

      public AttachPermission(String  name)
      构造一个新的 AttachPermission 对象。
      参数:
      name - 权限名称。必须是“attachVirtualMachine”或“createAttachProvider”。
      抛出:
      NullPointerException - 如果名称是 null
      IllegalArgumentException - 如果名称无效。
    • AttachPermission

      public AttachPermission(String  name, String  actions)
      构造一个新的 AttachPermission 对象。
      参数:
      name - 权限名称。必须是“attachVirtualMachine”或“createAttachProvider”。
      actions - 未使用,应为 null 或空字符串。
      抛出:
      NullPointerException - 如果名称是 null
      IllegalArgumentException - 如果参数无效。