|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface GSSCredential
このインタフェースでは、エンティティの GSS-API 資格をカプセル化します。資格には、エンティティを表すコンテキストをそのエンティティに代わって作成するのに必要なすべての暗号化情報が含まれています。また、機構に固有のさまざまな資格要素が含まれている場合もあります。それらの資格要素には特定のセキュリティ機構の情報が含まれていますが、どの要素も同じエンティティを参照しています。資格は、コンテキストの起動側または受け入れ側、あるいはその両方が使用します。
資格は、GSSManager
クラスの createCredential
メソッドのいずれかを使用してインスタンス化されます。GSS-API の資格を作成しても、ネットワークにログインする機能は提供されません。そのような機能には新しい資格の作成が必要ですが、GSS-API の資格作成では既存の資格へのハンドルを取得するだけです。Java 2 プラットフォームで既存の資格を取得する方法については、パッケージレベルの説明にある資格の取得に関する節を参照してください。GSS-API の実装では、呼び出し側にローカルアクセス制御ポリシーを適用して、承認されていない呼び出し側が許可されていない資格を取得するのを防止する必要があります。
アプリケーションは、必要なパラメータを渡して資格オブジェクトを作成します。その後は、インスタンス化された資格オブジェクトに対してクエリメソッドを使用して特定の情報を取得できます。その資格が必要なくなったときは、dispose
メソッドを呼び出してその資格オブジェクトが保持しているリソースをすべて解放し、暗号で保護された機密情報をすべて破棄する必要があります。
次のコード例では、特定のエンティティの GSSCredential 実装を作成し、そのフィールドを照会し、不要になったときに解放しています。
GSSManager manager = GSSManager.getInstance(); // start by creating a name object for the entity GSSName name = manager.createName("myusername", GSSName.NT_USER_NAME); // now acquire credentials for the entity GSSCredential cred = manager.createCredential(name, GSSCredential.ACCEPT_ONLY); // display credential information - name, remaining lifetime, // and the mechanisms it has been acquired over System.out.println(cred.getName().toString()); System.out.println(cred.getRemainingLifetime()); Oid [] mechs = cred.getMechs(); if (mechs != null) { for (int i = 0; i < mechs.length; i++) System.out.println(mechs[i].toString()); } // release system resources held by the credential cred.dispose();
GSSManager.createCredential(int)
,
GSSManager.createCredential(GSSName, int, Oid, int)
,
GSSManager.createCredential(GSSName, int, Oid[], int)
,
dispose()
フィールドの概要 | |
---|---|
static int |
ACCEPT_ONLY
資格使用フラグ。 |
static int |
DEFAULT_LIFETIME
資格のデフォルトの寿命を表す寿命定数です。 |
static int |
INDEFINITE_LIFETIME
資格の寿命が無期限であることを表す寿命定数です。 |
static int |
INITIATE_AND_ACCEPT
資格使用フラグ。 |
static int |
INITIATE_ONLY
資格使用フラグ。 |
メソッドの概要 | |
---|---|
void |
add(GSSName name,
int initLifetime,
int acceptLifetime,
Oid mech,
int usage)
GSS-API 機構固有の資格要素を既存の資格に追加します。 |
void |
dispose()
GSSCredential オブジェクトが保有している機密情報をすべて解放します。 |
boolean |
equals(Object another)
この GSSCredential が指定されたオブジェクトと同じエンティティを表明するかどうかをテストします。 |
Oid[] |
getMechs()
この資格がサポートしている GSS-API 機構のリストを返します。 |
GSSName |
getName()
資格が表明するエンティティの名前を取り出します。 |
GSSName |
getName(Oid mech)
資格が表明しているエンティティの GSS-API 機構名を取り出します。 |
int |
getRemainingAcceptLifetime(Oid mech)
資格の残りの寿命 (秒単位) で返します。 |
int |
getRemainingInitLifetime(Oid mech)
資格の残りの寿命 (秒単位) で返します。 |
int |
getRemainingLifetime()
資格の残りの寿命 (秒単位) で返します。 |
int |
getUsage()
資格使用モードを返します。 |
int |
getUsage(Oid mech)
特定の GSS-API 機構の資格使用モードを返します。 |
int |
hashCode()
この GSSCredential のハッシュコード値を返します。 |
フィールドの詳細 |
---|
static final int INITIATE_AND_ACCEPT
static final int INITIATE_ONLY
static final int ACCEPT_ONLY
static final int DEFAULT_LIFETIME
static final int INDEFINITE_LIFETIME
Integer.MAX_VALUE
に設定する必要があります。
メソッドの詳細 |
---|
void dispose() throws GSSException
GSSException
- メジャーエラーコード GSSException.FAILURE
を含むGSSName getName() throws GSSException
GSSException
- メジャーエラーコード GSSException.FAILURE
を含むGSSName getName(Oid mech) throws GSSException
getName
から返された値に対して canonicalize
を呼び出した場合と等価です。
mech
- 機構名を要求する GSS-API 機構の OID
GSSException
- メジャーエラーコード GSSException.BAD_MECH
および GSSException.FAILURE
を含むint getRemainingLifetime() throws GSSException
INDEFINITE_LIFETIME
は資格の寿命が残っていることを示し、戻り値 0 は資格がすでに期限切れになっていることを示す
GSSException
- メジャーエラーコード GSSException.FAILURE
を含むgetRemainingInitLifetime(Oid)
,
getRemainingAcceptLifetime(Oid)
int getRemainingInitLifetime(Oid mech) throws GSSException
mech
- 照会する起動側資格要素が属している GSS-API 機構の OID
INDEFINITE_LIFETIME
は資格要素の寿命が残っていることを示し、戻り値 0 は資格要素がすでに期限切れになっていることを示す
GSSException
- メジャーエラーコード GSSException.BAD_MECH
および GSSException.FAILURE
を含むint getRemainingAcceptLifetime(Oid mech) throws GSSException
mech
- 照会する受け入れ側資格要素が属している GSS-API 機構の OID
INDEFINITE_LIFETIME
は資格要素の寿命が残っていることを示し、戻り値 0 は資格要素がすでに期限切れになっていることを示す
GSSException
- メジャーエラーコード GSSException.BAD_MECH
および GSSException.FAILURE
を含むint getUsage() throws GSSException
INITIATE_ONLY
、ACCEPT_ONLY
、INITIATE_AND_ACCEPT
のいずれか
GSSException
- メジャーエラーコード GSSException.FAILURE
を含むint getUsage(Oid mech) throws GSSException
mech
- 資格使用モードを検査する GSS-API 機構の OID
INITIATE_ONLY
、ACCEPT_ONLY
、INITIATE_AND_ACCEPT
のいずれか
GSSException
- メジャーエラーコード GSSException.BAD_MECH
および GSSException.FAILURE
を含むOid[] getMechs() throws GSSException
GSSException
- メジャーエラーコード GSSException.FAILURE
を含むvoid add(GSSName name, int initLifetime, int acceptLifetime, Oid mech, int usage) throws GSSException
このルーチンは、コンテキストの受け入れ側が、さまざまなセキュリティ機構とクライアントの組み合わせで受け入れ側資格を作成するときに使用します。
このルーチンを使用すると、新しい資格要素が適切に追加されます。新しい資格にその資格要素を追加するには、まず clone
を呼び出してこの資格のコピーを取得し、次にその add
メソッドを呼び出します。
これまでと同様、GSS-API の実装では、呼び出し側にローカルアクセス制御ポリシーを適用して、承認されていない呼び出し側が許可されていない資格を取得するのを防ぐ必要があります。
initLifetime や acceptLifetime にデフォルト以外の値を指定すると配下の機構に受け付けられないことがあるため、呼び出し側では、資格に対して getRemainingInitLifetime
および getRemainingAcceptLifetime
を呼び出す準備をしておく必要があります。
name
- この資格を取得する主体の名前。デフォルトの主体を指定する場合は null
を使用するinitLifetime
- セキュリティコンテキストの起動側に対する資格要素の残りの寿命 (秒単位)。資格の寿命を設定可能な最大期限にすることを要求する場合は、GSSCredential.INDEFINITE_LIFETIME
を使用する。デフォルトの寿命を要求する場合は、GSSCredential.DEFAULT_LIFETIME
を使用するacceptLifetime
- セキュリティコンテキストの受け入れ側に対する資格要素の残りの寿命 (秒単位)。資格の寿命を設定可能な最大期限にすることを要求する場合は、GSSCredential.INDEFINITE_LIFETIME
を使用する。デフォルトの寿命を要求する場合は、GSSCredential.DEFAULT_LIFETIME
を使用するmech
- 資格を取得する GSS-API 機構usage
- この資格要素が資格に追加する必要のある使用モード。このパラメータの値は、INITIATE_AND_ACCEPT
、ACCEPT_ONLY
、INITIATE_ONLY
のいずれかでなければならない
GSSException
- メジャーエラーコード GSSException.DUPLICATE_ELEMENT
、GSSException.BAD_MECH
、GSSException.BAD_NAMETYPE
、GSSException.NO_CRED
、GSSException.CREDENTIALS_EXPIRED
、GSSException.FAILURE
を含むboolean equals(Object another)
Object
内の equals
another
- この GSSCredential と比較する GSSCredential
true
、そうでない場合は false
Object.hashCode()
,
Hashtable
int hashCode()
Object
内の hashCode
Object.equals(java.lang.Object)
,
Hashtable
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。