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
、インタフェースKey
public final String getFormat()
public final byte[] getEncoded()
getEncoded
、インタフェースKey
public void destroy() throws DestroyFailedException
destroy
、インタフェースDestroyable
DestroyFailedException
- このキーの破棄中にエラーが起きた場合。public boolean isDestroyed()
isDestroyed
、インタフェースDestroyable
Object
が破棄された場合はtrue、そうでない場合はfalse。public String toString()
Object
toString
メソッドは、このオブジェクトを「テキストで表す」文字列を返します。 この結果は、人間が読める簡潔で有益な情報であるべきです。 すべてのサブクラスで、このメソッドをオーバーライドすることをお勧めします。
クラスObject
のtoString
メソッドは、オブジェクトがインスタンスになっている元のクラスの名前、アットマーク文字「@
」、およびオブジェクトのハッシュ・コードの符号なし16進数表現から構成される文字列を返します。 つまり、このメソッドは次の値と等しい文字列を返します。
getClass().getName() + '@' + Integer.toHexString(hashCode())
public int hashCode()
hashCode
、クラスObject
KerberosKey
のhashCode()Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean equals(Object other)
KerberosKey
であり、2つのKerberosKey
インスタンスが等価である場合、trueを返します。 equals
、クラスObject
other
- 比較対象の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も参照してください。