public class KerberosKey extends Object implements SecretKey, Destroyable
主体のパスワードを取得して秘密キーを生成するすべてのKerberos JAASログイン・モジュールでは、このクラスを使用するようにしてください。 ユーザー対ユーザー認証なしでサーバーを認証する場合などに、ログイン・モジュールは、認証プロセスのコミット・フェーズ中に、このクラスのインスタンスをSubjectの非公開資格セットに格納することがあります。
キー・タブを使用して秘密キーを読み込むKerberosサービスでは、KeyTabクラスを使用するようにしてください。このクラスでは、必要に応じて最新のキーが読み込まれます。
アプリケーションがSubjectオブジェクトからKerberosKeyインスタンスにアクセスする必要がある場合は、アプリケーションにPrivateCredentialPermissionを与えることが必要な場合があります。 アプリケーションがKerberosKeyにアクセスするのにデフォルトのJGSS Kerberosメカニズムに依存しているときには、このアクセス権は必要ありません。 ただしその場合、アプリケーションには適切なServicePermissionが必要です。
| コンストラクタ | 説明 |
|---|---|
KerberosKey(KerberosPrincipal principal, byte[] keyBytes, int keyType, int versionNum) |
キー・タイプとキーのバージョン番号が判明している場合、指定されたバイトでKerberosKeyを構築します。
|
KerberosKey(KerberosPrincipal principal, char[] password, String algorithm) |
主体のパスワードからKerberosKeyを構築します。
|
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
void |
destroy() |
このキーを破棄します。
|
boolean |
equals(Object other) |
指定されたObjectがこのKerberosKeyと等しいかどうか比較します。
|
String |
getAlgorithm() |
このキーに対する標準アルゴリズムを返します。
|
byte[] |
getEncoded() |
この秘密キーのキー・データを返します。
|
String |
getFormat() |
この秘密キーのエンコード形式の名前を返します。
|
int |
getKeyType() |
この長期キーのキー・タイプを返します。
|
KerberosPrincipal |
getPrincipal() |
このキーが属する主体を返します。
|
int |
getVersionNumber() |
キーのバージョン番号を返します。
|
int |
hashCode() |
このKerberosKeyのハッシュ・コードを返します。
|
boolean |
isDestroyed() |
このキーが破棄されたかどうかを判定します。
|
String |
toString() |
オブジェクトの文字列表現を返します。
|
public KerberosKey(KerberosPrincipal principal, byte[] keyBytes, int keyType, int versionNum)
principal - この秘密キーが属する主体keyBytes - 秘密キーのrawバイトkeyType - Kerberosプロトコル仕様で定義された、秘密キーのキー・タイプ。versionNum - この秘密キーのバージョン番号public KerberosKey(KerberosPrincipal principal, char[] password, String algorithm)
principal - このパスワードが属する主体password - キーを計算するのに使用されるパスワードalgorithm - このキーが使用されるアルゴリズムの名前。 このパラメータは、デフォルトのアルゴリズム(DES)を使用する場合はnullでも可。 IllegalArgumentException - 渡されたアルゴリズム名がサポートされていない場合。public final KerberosPrincipal getPrincipal()
public final int getVersionNumber()
public final int getKeyType()
public final String getAlgorithm()
getAlgorithm、インタフェースKeypublic final String getFormat()
public final byte[] getEncoded()
getEncoded、インタフェースKeypublic void destroy()
throws DestroyFailedException
destroy、インタフェースDestroyableDestroyFailedException - このキーの破棄中にエラーが起きた場合。public boolean isDestroyed()
isDestroyed、インタフェースDestroyableObjectが破棄された場合はtrue、そうでない場合はfalse。public String toString()
ObjecttoStringメソッドは、このオブジェクトを「テキストで表す」文字列を返します。 この結果は、人間が読める簡潔で有益な情報であるべきです。 すべてのサブクラスで、このメソッドをオーバーライドすることをお勧めします。
クラスObjectのtoStringメソッドは、オブジェクトがインスタンスになっている元のクラスの名前、アットマーク文字「@」、およびオブジェクトのハッシュ・コードの符号なし16進数表現から構成される文字列を返します。 つまり、このメソッドは次の値と等しい文字列を返します。
getClass().getName() + '@' + Integer.toHexString(hashCode())
public int hashCode()
hashCode、クラスObjectKerberosKeyのhashCode()Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public boolean equals(Object other)
KerberosKeyであり、2つのKerberosKeyインスタンスが等価である場合、trueを返します。 equals、クラスObjectother - 比較対象のObjectObject.hashCode()、HashMap バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。