|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
このインタフェースでは、エンティティの GSS-API 資格をカプセル化します。資格には、コンテキストの作成に必要なすべての暗号化情報が含まれています。このインタフェースは、資格を使用して、自身が表現するエンティティに代わって、コンテキストを作成できます。また、GSS-API 機構固有のさまざまな資格要素が含まれている場合もあります。それらの資格要素には特定のセキュリティ機構の情報が含まれていますが、どの要素も同じエンティティを参照します。資格は、コンテキストの起動側または受け入れ側、あるいはその両方が使用します。
資格は、GSSManager クラスの createCredential メソッドのいずれかを使用してインスタンス化されます。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 のハッシュコード値を返します。 |
| フィールドの詳細 |
public static final int INITIATE_AND_ACCEPT
public static final int INITIATE_ONLY
public static final int ACCEPT_ONLY
public static final int DEFAULT_LIFETIME
public static final int INDEFINITE_LIFETIME
Integer.MAX_VALUE に設定する必要があります。
| メソッドの詳細 |
public void dispose()
throws GSSException
GSSException - メジャーエラーコード GSSException.FAILURE を含む
public GSSName getName()
throws GSSException
GSSException - メジャーエラーコード GSSException.FAILURE を含む
public GSSName getName(Oid mech)
throws GSSException
getName によって返された値に対して、canonicalize を呼び出した場合と等価です。
mech - 機構名を要求する GSS-API 機構の OID
GSSException - メジャーエラーコード GSSException.BAD_MECH、GSSException.FAILURE を含む
public int getRemainingLifetime()
throws GSSException
INDEFINITE_LIFETIME は資格の寿命が残っていることを示し、戻り値 0 は資格が期限切れになっていることを示す
GSSException - メジャーエラーコード GSSException.FAILURE を含むgetRemainingInitLifetime(Oid),
getRemainingAcceptLifetime(Oid)
public int getRemainingInitLifetime(Oid mech)
throws GSSException
mech - 照会する起動側資格要素が属している GSS-API 機構の OID
INDEFINITE_LIFETIME は資格要素の寿命が残っていることを示し、戻り値 0 は資格要素が期限切れになっていることを示す
GSSException - メジャーエラーコード GSSException.BAD_MECH、GSSException.FAILURE を含む
public int getRemainingAcceptLifetime(Oid mech)
throws GSSException
mech - 照会する受け入れ側資格要素が属している GSS-API 機構の OID
INDEFINITE_LIFETIME は資格要素の寿命が残っていることを示し、戻り値 0 は資格要素が期限切れになっていることを示す
GSSException - メジャーエラーコード GSSException.BAD_MECH、GSSException.FAILURE を含む
public int getUsage()
throws GSSException
INITIATE_ONLY、ACCEPT_ONLY、INITIATE_AND_ACCEPT のいずれか
GSSException - メジャーエラーコード GSSException.FAILURE を含む
public int getUsage(Oid mech)
throws GSSException
mech - 資格使用モードを検査する GSS-API 機構の OID
INITIATE_ONLY、ACCEPT_ONLY、INITIATE_AND_ACCEPT のいずれか
GSSException - メジャーエラーコード GSSException.BAD_MECH、GSSException.FAILURE を含む
public Oid[] getMechs()
throws GSSException
getUsage メソッドを呼び出す必要があります。
GSSException - メジャーエラーコード GSSException.FAILURE を含む
public void add(GSSName name,
int initLifetime,
int acceptLifetime,
Oid mech,
int usage)
throws GSSException
このルーチンは、コンテキストの受け入れ側が、さまざまなセキュリティ機構とクライアントの組み合わせで受け入れ側資格を作成するときに使用します。
このルーチンを使用すると、新しい資格要素が適切に追加されます。新しい資格にその資格要素を追加するには、まず clone を呼び出してこの資格のコピーを取得し、次にその add メソッドを呼び出します。
GSS-API の実装では、呼び出し側にアクセス制御ポリシーを適用して、承認されていない呼び出し側が許可されていない資格を取得できないようにする必要があります。デフォルト以外の initLifetime 値と acceptLifetime 値は、配下の GSS-API 機構では受け付けられません。この場合、呼び出し側は、この資格に対して 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 を含むpublic boolean equals(Object another)
Object 内の equalsanother - この GSSCredential と比較する GSSCredential
true、そうでない場合は falsepublic int hashCode()
Object 内の hashCode
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.