- java.lang.Object
-
- javax.security.auth.kerberos.KerberosPrincipal
-
- すべての実装されたインタフェース:
Serializable
,Principal
public final class KerberosPrincipal extends Object implements Principal, Serializable
このクラスはKerberos主体をカプセル化します。- 導入されたバージョン:
- 1.4
- 関連項目:
- 直列化された形式
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static int
KRB_NT_PRINCIPAL
ユーザー主体の名前タイプです。static int
KRB_NT_SRV_HST
ホスト名をインスタンスとしているサービス(telnet、rcommands)の名前タイプです。static int
KRB_NT_SRV_INST
サービスとほかの固有インスタンス(krbtgt)の名前タイプです。static int
KRB_NT_SRV_XHST
ホストを残りのコンポーネントとしているサービスの名前タイプです。static int
KRB_NT_UID
一意のID名前タイプです。static int
KRB_NT_UNKNOWN
不明な名前タイプです。
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 KerberosPrincipal(String name)
指定された文字列入力からKerberosPrincipal
を構築します。KerberosPrincipal(String name, int nameType)
指定された文字列と名前型入力からKerberosPrincipal
を構築します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 boolean
equals(Object other)
指定されたオブジェクトとこのプリンシパルが等しいかどうかを比較します。String
getName()
返される文字列は、RFC 1964のセクション2.1で指定されているKerberos Principal名の単一文字列表現に対応します。int
getNameType()
KerberosPrincipal
の名前の型を返します。String
getRealm()
このKerberos主体のレルム・コンポーネントを返します。int
hashCode()
このKerberosPrincipal
のハッシュ・コードを返します。String
toString()
このKerberosPrincipal
の有益なテキスト表現を返します。
-
-
-
フィールドの詳細
-
KRB_NT_UNKNOWN
public static final int KRB_NT_UNKNOWN
不明な名前タイプです。- 関連項目:
- 定数フィールド値
-
KRB_NT_PRINCIPAL
public static final int KRB_NT_PRINCIPAL
ユーザー主体の名前タイプです。- 関連項目:
- 定数フィールド値
-
KRB_NT_SRV_INST
public static final int KRB_NT_SRV_INST
サービスとほかの固有インスタンス(krbtgt)の名前タイプです。- 関連項目:
- 定数フィールド値
-
KRB_NT_SRV_HST
public static final int KRB_NT_SRV_HST
ホスト名をインスタンスとしているサービス(telnet、rcommands)の名前タイプです。- 関連項目:
- 定数フィールド値
-
KRB_NT_SRV_XHST
public static final int KRB_NT_SRV_XHST
ホストを残りのコンポーネントとしているサービスの名前タイプです。- 関連項目:
- 定数フィールド値
-
KRB_NT_UID
public static final int KRB_NT_UID
一意のID名前タイプです。- 関連項目:
- 定数フィールド値
-
-
コンストラクタの詳細
-
KerberosPrincipal
public KerberosPrincipal(String name)
指定された文字列入力からKerberosPrincipal
を構築します。 この主体の名前タイプはデフォルトでKRB_NT_PRINCIPAL
になります。この文字列は、セクション2.1.1 (Kerberos Principal Name Form) (RFC 1964)で規定された形式の名前を含むものとみなされます(例: duke@FOO.COM。ここでdukeは主体を、FOO.COMはレルムを表す)。入力した名前にレルムが含まれない場合は、デフォルトのレルムが使用されます。 デフォルトのレルムはKerberos構成ファイルか、java.security.krb5.realmシステム・プロパティで指定されます。 詳細は、「Kerberosの要件」を参照してください。 さらに、セキュリティ・マネージャがインストールされている場合は、
ServicePermission
を付与する必要があり、そのアクセス許可のサービス・プリンシパルは最小限KerberosPrincipal
レルム内になければなりません。 たとえば、new KerberosPrincipal("user")
の結果がuser@EXAMPLE.COM
である場合、サービス主体host/www.example.com@EXAMPLE.COM
(および任意のアクション)を持つServicePermission
を付与する必要があります。- パラメータ:
name
- 主体名- 例外:
IllegalArgumentException
- 名前の形式が正しくない場合、名前がnullの場合、または名前に使用できるレルムが含まれず、かつデフォルトのレルムがKerberos構成ファイルでもjava.security.krb5.realmシステム・プロパティでも指定されていない場合。SecurityException
- セキュリティ・マネージャがインストールされていて、name
に使用するレルムが含まれておらず、上記の適切なServicePermission
が付与されていない場合。
-
KerberosPrincipal
public KerberosPrincipal(String name, int nameType)
指定された文字列と名前型入力からKerberosPrincipal
を構築します。 この文字列はRFC 1964のセクション2.1 (Mandatory Name Forms)で指定された形式の名前を含むものとみなされます。 有効な名前タイプは、RFC 4120のセクション6.2 (Principal Names)で定義されています。 入力名は指定された名前タイプと整合性が取れている必要があります。たとえば、duke@FOO.COMは名前タイプKRB_NT_PRINCIPALで有効な入力文字列です。ここでdukeは主体、FOO.COMはレルムを表します。入力した名前にレルムが含まれない場合は、デフォルトのレルムが使用されます。 デフォルトのレルムはKerberos構成ファイルか、java.security.krb5.realmシステム・プロパティで指定されます。 詳細は、「Kerberosの要件」を参照してください。 さらに、セキュリティ・マネージャがインストールされている場合は、
ServicePermission
を付与する必要があり、そのアクセス許可のサービス・プリンシパルは最小限KerberosPrincipal
レルム内になければなりません。 たとえば、new KerberosPrincipal("user")
の結果がuser@EXAMPLE.COM
である場合、サービス主体host/www.example.com@EXAMPLE.COM
(および任意のアクション)を持つServicePermission
を付与する必要があります。- パラメータ:
name
- 主体名nameType
- 主体の名前タイプ- 例外:
IllegalArgumentException
- 名前の形式が正しくない場合、名前がnullの場合、nameTypeがサポートされていない場合、または名前に使用できるレルムが含まれず、かつデフォルトのレルムがKerberos構成ファイルでもjava.security.krb5.realmシステム・プロパティでも指定されていない場合。SecurityException
- セキュリティ・マネージャがインストールされていて、name
に使用するレルムが含まれておらず、上記の適切なServicePermission
が付与されていない場合。
-
-
メソッドの詳細
-
getRealm
public String getRealm()
このKerberos主体のレルム・コンポーネントを返します。- 戻り値:
- このKerberos主体のレルム・コンポーネント。
-
hashCode
public int hashCode()
このKerberosPrincipal
のハッシュ・コードを返します。 ハッシュ・コードは、次の計算の結果として定義されます。hashCode = getName().hashCode();
- 定義:
hashCode
、インタフェース:Principal
- オーバーライド:
hashCode
、クラス:Object
- 戻り値:
- この
KerberosPrincipal
のハッシュ・コード。 - 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
equals
public boolean equals(Object other)
指定されたオブジェクトとこのプリンシパルが等しいかどうかを比較します。 指定されたオブジェクトがKerberosPrincipal
であり、2つのKerberosPrincipal
インスタンスが等価である場合、trueを返します。 より正確には、getName()
で返される値が等しい場合、2つのKerberosPrincipal
インスタンスは等しくなります。
-
getName
public String getName()
返される文字列は、RFC 1964のセクション2.1で指定されているKerberos Principal名の単一文字列表現に対応します。
-
getNameType
public int getNameType()
KerberosPrincipal
の名前の型を返します。 有効な名前タイプは、RFC4120のセクション6.2で指定されています。- 戻り値:
- 名前タイプ。
-
-