Module jdk.jdi
Package com.sun.jdi

Class JDIPermission

  • All Implemented Interfaces:
    Serializable, Guard


    public final class JDIPermission
    extends BasicPermission
    The JDIPermission class represents access rights to the VirtualMachineManager. This is the permission which the SecurityManager will check when code that is running with a SecurityManager requests access to the VirtualMachineManager, as defined in the Java Debug Interface (JDI) for the Java platform.

    A JDIPermission object contains a name (also referred to as a "target name") but no actions list; you either have the named permission or you don't.

    The following table provides a summary description of what the permission allows, and discusses the risks of granting code the permission.

    Table shows permission target name, what the permission allows, and associated risks
    Permission Target Name What the Permission Allows Risks of Allowing this Permission
    virtualMachineManager Ability to inspect and modify the JDI objects in the VirtualMachineManager This allows an attacker to control the VirtualMachineManager and cause the system to misbehave.

    Programmers do not normally create JDIPermission objects directly. Instead they are created by the security policy code based on reading the security policy file.

    Since:
    1.5
    See Also:
    Bootstrap, BasicPermission, Permission, Permissions, PermissionCollection, SecurityManager, Serialized Form
    • Constructor Detail

      • JDIPermission

        public JDIPermission​(String name)
        The JDIPermission class represents access rights to the VirtualMachineManager
        Parameters:
        name - Permission name. Must be "virtualMachineManager".
        Throws:
        IllegalArgumentException - if the name argument is invalid.
      • JDIPermission

        public JDIPermission​(String name,
                             String actions)
                      throws IllegalArgumentException
        Constructs a new JDIPermission object.
        Parameters:
        name - Permission name. Must be "virtualMachineManager".
        actions - Must be either null or the empty string.
        Throws:
        IllegalArgumentException - if arguments are invalid.