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, 2014, Oracle and/or its affiliates. All rights reserved.