compact3
javax.management.remote

## Class JMXPrincipal

- java.lang.Object
- - javax.management.remote.JMXPrincipal

- All Implemented Interfaces:
    Serializable, Principal

      public class JMXPrincipal
      extends Object
      implements Principal, Serializable

  The identity of a remote client of the JMX Remote API.

  Principals such as this `JMXPrincipal` may be associated with a particular `Subject` to augment that `Subject` with an additional identity. Refer to the `Subject` class for more information on how to achieve this. Authorization decisions can then be based upon the Principals associated with a `Subject`.

  Since:
    1.5
  See Also:
    `Principal`, `Subject`, Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `JMXPrincipal(String name)` | Creates a JMXPrincipal for a given identity.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals(Object o)` | Compares the specified Object with this `JMXPrincipal` for equality.
    `String` | `getName()` | Returns the name of this principal.
    `int` | `hashCode()` | Returns a hash code for this `JMXPrincipal`.
    `String` | `toString()` | Returns a string representation of this `JMXPrincipal`.

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

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

    - ### Methods inherited from interface java.security.Principal

      `implies`

- - ### Constructor Detail

    - #### JMXPrincipal

          public JMXPrincipal(String name)

      Creates a JMXPrincipal for a given identity.

      Parameters:
        `name` - the JMX Remote API name for this identity.
      Throws:
        `NullPointerException` - if the `name` is `null`.

  - ### Method Detail

    - #### getName

          public String getName()

      Returns the name of this principal.

      Specified by:
        `getName` in interface `Principal`
      Returns:
        the name of this `JMXPrincipal`.

    - #### toString

          public String toString()

      Returns a string representation of this `JMXPrincipal`.

      Specified by:
        `toString` in interface `Principal`
      Overrides:
        `toString` in class `Object`
      Returns:
        a string representation of this `JMXPrincipal`.

    - #### equals

          public boolean equals(Object o)

      Compares the specified Object with this `JMXPrincipal` for equality. Returns true if the given object is also a `JMXPrincipal` and the two JMXPrincipals have the same name.

      Specified by:
        `equals` in interface `Principal`
      Overrides:
        `equals` in class `Object`
      Parameters:
        `o` - Object to be compared for equality with this `JMXPrincipal`.
      Returns:
        true if the specified Object is equal to this `JMXPrincipal`.
      See Also:
        `Object.hashCode()`, `HashMap`

    - #### hashCode

          public int hashCode()

      Returns a hash code for this `JMXPrincipal`.

      Specified by:
        `hashCode` in interface `Principal`
      Overrides:
        `hashCode` in class `Object`
      Returns:
        a hash code for this `JMXPrincipal`.
      See Also:
        `Object.equals(java.lang.Object)`, `System.identityHashCode(java.lang.Object)`

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.