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.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
getUsage
メソッドを呼び出す必要があります。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)
equals
、クラス: Object
another
- このGSSCredentialと比較するGSSCredentialtrue
、そうでない場合はfalse
。Object.hashCode()
、HashMap
int hashCode()
hashCode
、クラス: Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.