javax.security.auth.kerberos
Class KerberosPrincipal
- java.lang.Object
javax.security.auth.kerberos.KerberosPrincipal
All implemented interfaces:
java.io.Serializable, java.security.Principal
- public final class KerberosPrincipal
- extends java.lang.Object
- implements java.security.Principal, java.io.Serializable
Since:
1.4
Version:
1.14, 12/03/01
Author:
Mayank Upadhyay
See Also:
Field Summary
Modifier and Type | Field and Description |
---|---|
|
KRB_NT_PRINCIPAL
user principal name type
|
|
KRB_NT_SRV_HST
service with host name as instance (telnet, rcommands) name type
|
|
KRB_NT_SRV_INST
service and other unique instance (krbtgt) name type
|
|
KRB_NT_SRV_XHST
service with host as remaining components name type
|
|
KRB_NT_UID
unique ID name type
|
|
KRB_NT_UNKNOWN
unknown name type
|
Constructor Summary
Constructor and Description |
---|
KerberosPrincipal(java.lang.String name)
Constructs a KerberosPrincipal from the provided string input.
|
KerberosPrincipal(java.lang.String name,int nameType)
Constructs a KerberosPrincipal from the provided string and
name type input.
|
Method Summary
Modifier and Type | Method and Description |
---|---|
|
equals(java.lang.Object other)
Compares the specified Object with this Principal for equality.
|
|
getName()
The returned string corresponds to the single-string
representation of a Kerberos Principal name as specified in
Section 2.1 of RFC 1964.
|
|
getNameType()
Returns the name type of the KerberosPrincipal.
|
|
getRealm()
Returns the realm component of this Kerberos principal.
|
|
hashCode()
Returns a hashcode for this principal.
|
|
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail
KRB_NT_UNKNOWN
- public static final int KRB_NT_UNKNOWN
unknown name type
See Also:
KRB_NT_PRINCIPAL
- public static final int KRB_NT_PRINCIPAL
user principal name type
See Also:
KRB_NT_SRV_INST
- public static final int KRB_NT_SRV_INST
service and other unique instance (krbtgt) name type
See Also:
KRB_NT_SRV_HST
- public static final int KRB_NT_SRV_HST
service with host name as instance (telnet, rcommands) name type
See Also:
KRB_NT_SRV_XHST
- public static final int KRB_NT_SRV_XHST
service with host as remaining components name type
See Also:
KRB_NT_UID
- public static final int KRB_NT_UID
unique ID name type
See Also:
Constructor Detail
KerberosPrincipal
- public KerberosPrincipal(java.lang.String name)
Constructs a KerberosPrincipal from the provided string input. The
name type for this principal defaults to
KRB_NT_PRINCIPAL
This string is assumed to contain a name in the format
that is specified in Section 2.1.1. (Kerberos Principal Name Form) of
RFC 1964
(for example, duke@FOO.COM, where duke
represents a principal, and FOO.COM represents a realm).
If the input name does not contain a realm, the default realm is used. The default realm can be specified either in a Kerberos configuration file or via the java.security.krb5.realm system property. For more information, Kerberos Requirements
Parameters:
name
- the principal name Throws:
java.lang.IllegalArgumentException
- if name is improperly
formatted, if name is null, or if name does not contain
the realm to use and the default realm is not specified
in either a Kerberos configuration file or via the
java.security.krb5.realm system property. KerberosPrincipal
- public KerberosPrincipal(java.lang.String name,
- int nameType)
Constructs a KerberosPrincipal from the provided string and
name type input. The string is assumed to contain a name in the
format that is specified in Section 2.1 (Mandatory Name Forms) of
RFC 1964.
Valid name types are specified in Section 7.2 (Principal Names) of
RFC 1510.
The input name must be consistent with the provided name type.
(for example, duke@FOO.COM, is a valid input string for the
name type, KRB_NT_PRINCIPAL where duke
represents a principal, and FOO.COM represents a realm).
If the input name does not contain a realm, the default realm is used. The default realm can be specified either in a Kerberos configuration file or via the java.security.krb5.realm system property. For more information, see Kerberos Requirements.
Parameters:
name
- the principal name nameType
- the name type of the principal Throws:
java.lang.IllegalArgumentException
- if name is improperly
formatted, if name is null, if the nameType is not supported,
or if name does not contain the realm to use and the default
realm is not specified in either a Kerberos configuration
file or via the java.security.krb5.realm system property. Method Detail
getRealm
- public java.lang.String getRealm( )
Returns the realm component of this Kerberos principal.
Returns:
the realm component of this Kerberos principal.
hashCode
- public int hashCode()
Returns a hashcode for this principal. The hash code is defined to
be the result of the following calculation:
hashCode = getName().hashCode();
Specified by:
hashCode
in interface java.security.Principal
Overrides:
hashCode
in class java.lang.Object
Returns:
a hashCode() for the
KerberosPrincipal
equals
- public boolean equals(java.lang.Object other)
Compares the specified Object with this Principal for equality.
Returns true if the given object is also a
KerberosPrincipal
and the two
KerberosPrincipal
instances are equivalent.
More formally two KerberosPrincipal
instances are equal
if the values returned by getName()
are equal and the
values returned by getNameType()
are equal.
Specified by:
equals
in interface java.security.Principal
Overrides:
equals
in class java.lang.Object
Parameters:
other
- the Object to compare to Returns:
true if the Object passed in represents the same principal
as this one, false otherwise.
getName
- public java.lang.String getName( )
The returned string corresponds to the single-string
representation of a Kerberos Principal name as specified in
Section 2.1 of RFC 1964.
Specified by:
getName
in interface java.security.Principal
Returns:
the principal name.
getNameType
- public int getNameType()
Returns the name type of the KerberosPrincipal. Valid name types
are specified in Section 7.2 of
RFC1510.
Returns:
the name type.
toString
- public java.lang.String toString( )
Specified by:
toString
in interface java.security.Principal
Overrides:
toString
in class java.lang.Object