SubjectDelegationPermission (Java Platform SE 8 )
Keywords: javax.management.remote.SubjectDelegationPermission class
Date: 2026-08-19

compact3
javax.management.remote

## Class SubjectDelegationPermission

- java.lang.Object
- - java.security.Permission
  - - java.security.BasicPermission
    - - javax.management.remote.SubjectDelegationPermission

- All Implemented Interfaces:
    Serializable, Guard

      public final class SubjectDelegationPermission
      extends BasicPermission

  Permission required by an authentication identity to perform operations on behalf of an authorization identity.

  A SubjectDelegationPermission 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 target name is the name of the authorization principal classname followed by a period and the authorization principal name, that is `"PrincipalClassName.PrincipalName"`.

  An asterisk may appear by itself, or if immediately preceded by a "." may appear at the end of the target name, to signify a wildcard match.

  For example, "*", "javax.management.remote.JMXPrincipal.*" and "javax.management.remote.JMXPrincipal.delegate" are valid target names. The first one denotes any principal name from any principal class, the second one denotes any principal name of the concrete principal class `javax.management.remote.JMXPrincipal` and the third one denotes a concrete principal name `delegate` of the concrete principal class `javax.management.remote.JMXPrincipal`.

  Since:
    1.5
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SubjectDelegationPermission(String name)` Creates a new SubjectDelegationPermission with the specified name.
    `SubjectDelegationPermission(String name, String actions)` Creates a new SubjectDelegationPermission object with the specified name.

  - ### Method Summary

    - ### Methods inherited from class java.security.BasicPermission

      `equals, getActions, hashCode, implies, newPermissionCollection`

    - ### Methods inherited from class java.security.Permission

      `checkGuard, getName, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SubjectDelegationPermission

          public SubjectDelegationPermission(String name)

      Creates a new SubjectDelegationPermission with the specified name. The name is the symbolic name of the SubjectDelegationPermission.
      Parameters:
        `name` - the name of the SubjectDelegationPermission
      Throws:
        `NullPointerException` - if `name` is `null`.
        `IllegalArgumentException` - if `name` is empty.

    - #### SubjectDelegationPermission

          public SubjectDelegationPermission(String name,
                                             String actions)

      Creates a new SubjectDelegationPermission object with the specified name. The name is the symbolic name of the SubjectDelegationPermission, and the actions String is currently unused and must be null.
      Parameters:
        `name` - the name of the SubjectDelegationPermission
        `actions` - must be null.
      Throws:
        `NullPointerException` - if `name` is `null`.
        `IllegalArgumentException` - if `name` is empty or `actions` is not null.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.