public interface GSSCredential extends Cloneable
資格は、GSSManager クラスの createCredential メソッドのいずれかを使用してインスタンス化されます。GSS-API の資格を作成しても、ネットワークにログインする機能は提供されません。そのような機能には新しい資格の作成が必要ですが、GSS-API の資格作成では既存の資格へのハンドルを取得するだけです。Java プラットフォームで既存の資格を取得する方法については、パッケージレベルの説明にある資格の取得に関するセクションを参照してください。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();
| 修飾子と型 | フィールドと説明 |
|---|---|
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)
資格の残りの寿命 (秒単位) で返します。この期間は、指定された GSS-API メカニズムを使用して、セキュリティーコンテキストを受け入れることができます。
|
int |
getRemainingInitLifetime(Oid mech)
資格の残りの寿命 (秒単位) で返します。この期間は、指定された GSS-API メカニズムを使用して、セキュリティーコンテキストを起動できます。
|
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.FAILUREGSSName getName() throws GSSException
GSSException - 次のメジャーエラーコードを含む。 GSSException.FAILUREGSSName getName(Oid mech) throws GSSException
getName から返された値に対して canonicalize を呼び出した場合と等価です。mech - メカニズム名を要求する GSS-API メカニズムの OID。GSSException - 次のメジャーエラーコードを含む。GSSException.BAD_MECH, GSSException.FAILUREint getRemainingLifetime()
throws GSSException
INDEFINITE_LIFETIME は資格の寿命が残っていることを示す。戻り値 0 は資格がすでに期限切れになっていることを示す。GSSException - 次のメジャーエラーコードを含む。GSSException.FAILUREgetRemainingInitLifetime(Oid), getRemainingAcceptLifetime(Oid)int getRemainingInitLifetime(Oid mech) throws GSSException
mech - 照会する起動側資格要素が属している GSS-API メカニズムの OID。INDEFINITE_LIFETIME は資格要素の寿命が残っていることを示す。戻り値 0 は資格要素がすでに期限切れになっていることを示す。GSSException - 次のメジャーエラーコードを含む。GSSException.BAD_MECH, GSSException.FAILUREint getRemainingAcceptLifetime(Oid mech) throws GSSException
mech - 照会する受け入れ側資格要素が属している GSS-API メカニズムの OID。INDEFINITE_LIFETIME は資格要素の寿命が残っていることを示す。戻り値 0 は資格要素がすでに期限切れになっていることを示す。GSSException - 次のメジャーエラーコードを含む。GSSException.BAD_MECH, GSSException.FAILUREint getUsage()
throws GSSException
INITIATE_ONLY、ACCEPT_ONLY、および INITIATE_AND_ACCEPT のいずれか。GSSException - 次のメジャーエラーコードを含む。 GSSException.FAILUREint getUsage(Oid mech) throws GSSException
mech - 資格使用モードを検査する GSS-API メカニズムの OID。INITIATE_ONLY、ACCEPT_ONLY、および INITIATE_AND_ACCEPT のいずれか。GSSException - 次のメジャーエラーコードを含む。GSSException.BAD_MECH, GSSException.FAILUREOid[] getMechs() throws GSSException
getUsage メソッドを呼び出す必要があります。GSSException - 次のメジャーエラーコードを含む。 GSSException.FAILUREvoid 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.FAILUREboolean equals(Object another)
equals、クラス: Objectanother - この GSSCredential と比較する GSSCredentialtrue、そうでない場合は false。Object.hashCode()、HashMapint hashCode()
hashCode、クラス: ObjectObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object) バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.