javax.security.auth.kerberos
Class KerberosPrincipal

java.lang.Object sample code for java.lang.Object definition code for java.lang.Object 
  extended by javax.security.auth.kerberos.KerberosPrincipal
All Implemented Interfaces:
Serializable sample code for java.io.Serializable definition code for java.io.Serializable , Principal sample code for java.security.Principal definition code for java.security.Principal

public final class KerberosPrincipal
extends Object sample code for java.lang.Object definition code for java.lang.Object
implements Principal sample code for java.security.Principal definition code for java.security.Principal , Serializable sample code for java.io.Serializable definition code for java.io.Serializable

This class encapsulates a Kerberos principal.

Since:
1.4
See Also:
Serialized Form

Field Summary
static int KRB_NT_PRINCIPAL sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_PRINCIPAL definition code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_PRINCIPAL
          user principal name type.
static int KRB_NT_SRV_HST sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_HST definition code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_HST
          service with host name as instance (telnet, rcommands) name type.
static int KRB_NT_SRV_INST sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_INST definition code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_INST
          service and other unique instance (krbtgt) name type.
static int KRB_NT_SRV_XHST sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_XHST definition code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_XHST
          service with host as remaining components name type.
static int KRB_NT_UID sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_UID definition code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_UID
          unique ID name type.
static int KRB_NT_UNKNOWN sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_UNKNOWN definition code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_UNKNOWN
          unknown name type.
 
Constructor Summary
KerberosPrincipal sample code for javax.security.auth.kerberos.KerberosPrincipal.KerberosPrincipal(java.lang.String) definition code for javax.security.auth.kerberos.KerberosPrincipal.KerberosPrincipal(java.lang.String) (String sample code for java.lang.String definition code for java.lang.String  name)
          Constructs a KerberosPrincipal from the provided string input.
KerberosPrincipal sample code for javax.security.auth.kerberos.KerberosPrincipal.KerberosPrincipal(java.lang.String, int) definition code for javax.security.auth.kerberos.KerberosPrincipal.KerberosPrincipal(java.lang.String, int) (String sample code for java.lang.String definition code for java.lang.String  name, int nameType)
          Constructs a KerberosPrincipal from the provided string and name type input.
 
Method Summary
 boolean equals sample code for javax.security.auth.kerberos.KerberosPrincipal.equals(java.lang.Object) definition code for javax.security.auth.kerberos.KerberosPrincipal.equals(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  other)
          Compares the specified Object with this Principal for equality.
 String sample code for java.lang.String definition code for java.lang.String getName sample code for javax.security.auth.kerberos.KerberosPrincipal.getName() definition code for javax.security.auth.kerberos.KerberosPrincipal.getName() ()
          The returned string corresponds to the single-string representation of a Kerberos Principal name as specified in Section 2.1 of RFC 1964.
 int getNameType sample code for javax.security.auth.kerberos.KerberosPrincipal.getNameType() definition code for javax.security.auth.kerberos.KerberosPrincipal.getNameType() ()
          Returns the name type of the KerberosPrincipal.
 String sample code for java.lang.String definition code for java.lang.String getRealm sample code for javax.security.auth.kerberos.KerberosPrincipal.getRealm() definition code for javax.security.auth.kerberos.KerberosPrincipal.getRealm() ()
          Returns the realm component of this Kerberos principal.
 int hashCode sample code for javax.security.auth.kerberos.KerberosPrincipal.hashCode() definition code for javax.security.auth.kerberos.KerberosPrincipal.hashCode() ()
          Returns a hashcode for this principal.
 String sample code for java.lang.String definition code for java.lang.String toString sample code for javax.security.auth.kerberos.KerberosPrincipal.toString() definition code for javax.security.auth.kerberos.KerberosPrincipal.toString() ()
          Returns a string representation of the object.
 
Methods inherited from class java.lang.Object sample code for java.lang.Object definition code for java.lang.Object
clone sample code for java.lang.Object.clone() definition code for java.lang.Object.clone() , finalize sample code for java.lang.Object.finalize() definition code for java.lang.Object.finalize() , getClass sample code for java.lang.Object.getClass() definition code for java.lang.Object.getClass() , notify sample code for java.lang.Object.notify() definition code for java.lang.Object.notify() , notifyAll sample code for java.lang.Object.notifyAll() definition code for java.lang.Object.notifyAll() , wait sample code for java.lang.Object.wait() definition code for java.lang.Object.wait() , wait sample code for java.lang.Object.wait(long) definition code for java.lang.Object.wait(long) , wait sample code for java.lang.Object.wait(long, int) definition code for java.lang.Object.wait(long, int)
 

Field Detail

KRB_NT_UNKNOWN sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_UNKNOWN

public static final int KRB_NT_UNKNOWN
unknown name type.

See Also:
Constant Field Values

KRB_NT_PRINCIPAL sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_PRINCIPAL

public static final int KRB_NT_PRINCIPAL
user principal name type.

See Also:
Constant Field Values

KRB_NT_SRV_INST sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_INST

public static final int KRB_NT_SRV_INST
service and other unique instance (krbtgt) name type.

See Also:
Constant Field Values

KRB_NT_SRV_HST sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_HST

public static final int KRB_NT_SRV_HST
service with host name as instance (telnet, rcommands) name type.

See Also:
Constant Field Values

KRB_NT_SRV_XHST sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_SRV_XHST

public static final int KRB_NT_SRV_XHST
service with host as remaining components name type.

See Also:
Constant Field Values

KRB_NT_UID sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_UID

public static final int KRB_NT_UID
unique ID name type.

See Also:
Constant Field Values
Constructor Detail

KerberosPrincipal sample code for javax.security.auth.kerberos.KerberosPrincipal(java.lang.String) definition code for javax.security.auth.kerberos.KerberosPrincipal(java.lang.String)

public KerberosPrincipal(String sample code for java.lang.String definition code for java.lang.String  name)
Constructs a KerberosPrincipal from the provided string input. The name type for this principal defaults to KRB_NT_PRINCIPAL sample code for javax.security.auth.kerberos.KerberosPrincipal.KRB_NT_PRINCIPAL definition code for javax.security.auth.kerberos.KerberosPrincipal.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:
IllegalArgumentException sample code for java.lang.IllegalArgumentException definition code for 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 sample code for javax.security.auth.kerberos.KerberosPrincipal(java.lang.String, int) definition code for javax.security.auth.kerberos.KerberosPrincipal(java.lang.String, int)

public KerberosPrincipal(String sample code for java.lang.String definition code for 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:
IllegalArgumentException sample code for java.lang.IllegalArgumentException definition code for 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 sample code for javax.security.auth.kerberos.KerberosPrincipal.getRealm() definition code for javax.security.auth.kerberos.KerberosPrincipal.getRealm()

public String sample code for java.lang.String definition code for java.lang.String  getRealm()
Returns the realm component of this Kerberos principal.

Returns:
the realm component of this Kerberos principal.

hashCode sample code for javax.security.auth.kerberos.KerberosPrincipal.hashCode() definition code for javax.security.auth.kerberos.KerberosPrincipal.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 sample code for java.security.Principal.hashCode() definition code for java.security.Principal.hashCode() in interface Principal sample code for java.security.Principal definition code for java.security.Principal
Overrides:
hashCode sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
a hashCode() for the KerberosPrincipal
See Also:
Object.equals(java.lang.Object) sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) , Hashtable sample code for java.util.Hashtable definition code for java.util.Hashtable

equals sample code for javax.security.auth.kerberos.KerberosPrincipal.equals(java.lang.Object) definition code for javax.security.auth.kerberos.KerberosPrincipal.equals(java.lang.Object)

public boolean equals(Object sample code for java.lang.Object definition code for 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 sample code for java.security.Principal.equals(java.lang.Object) definition code for java.security.Principal.equals(java.lang.Object) in interface Principal sample code for java.security.Principal definition code for java.security.Principal
Overrides:
equals sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) in class Object sample code for java.lang.Object definition code for 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.
See Also:
Object.hashCode() sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() , Hashtable sample code for java.util.Hashtable definition code for java.util.Hashtable

getName sample code for javax.security.auth.kerberos.KerberosPrincipal.getName() definition code for javax.security.auth.kerberos.KerberosPrincipal.getName()

public String sample code for java.lang.String definition code for 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 sample code for java.security.Principal.getName() definition code for java.security.Principal.getName() in interface Principal sample code for java.security.Principal definition code for java.security.Principal
Returns:
the principal name.

getNameType sample code for javax.security.auth.kerberos.KerberosPrincipal.getNameType() definition code for javax.security.auth.kerberos.KerberosPrincipal.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 sample code for javax.security.auth.kerberos.KerberosPrincipal.toString() definition code for javax.security.auth.kerberos.KerberosPrincipal.toString()

public String sample code for java.lang.String definition code for java.lang.String  toString()
Description copied from class: Object sample code for java.lang.Object.toString() definition code for java.lang.Object.toString()
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Specified by:
toString sample code for java.security.Principal.toString() definition code for java.security.Principal.toString() in interface Principal sample code for java.security.Principal definition code for java.security.Principal
Overrides:
toString sample code for java.lang.Object.toString() definition code for java.lang.Object.toString() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
a string representation of the object.