JavaTM 2
Platform
Std. Ed. v1.4.0

org.ietf.jgss
インタフェース GSSCredential

すべてのスーパーインタフェース:
Cloneable

public interface GSSCredential
extends Cloneable

このインタフェースでは、エンティティの 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();

導入されたバージョン:
1.4
関連項目:
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 のハッシュコード値を返します。
 

フィールドの詳細

INITIATE_AND_ACCEPT

public static final int INITIATE_AND_ACCEPT
資格使用フラグ。コンテキストの起動側および受け入れ側が使用できるように要求します。

関連項目:
定数フィールド値

INITIATE_ONLY

public static final int INITIATE_ONLY
資格使用フラグ。コンテキストの起動側だけが使用できるように要求します。

関連項目:
定数フィールド値

ACCEPT_ONLY

public static final int ACCEPT_ONLY
資格使用フラグ。コンテキストの受け入れ側だけが使用できるように要求します。

関連項目:
定数フィールド値

DEFAULT_LIFETIME

public static final int DEFAULT_LIFETIME
資格のデフォルトの寿命を表す寿命定数です。この値は 0 に設定されます。

関連項目:
定数フィールド値

INDEFINITE_LIFETIME

public static final int INDEFINITE_LIFETIME
資格の寿命が無期限であることを表す寿命定数です。この値は、Java の最大整数値 Integer.MAX_VALUE に設定する必要があります。

関連項目:
定数フィールド値
メソッドの詳細

dispose

public void dispose()
             throws GSSException
GSSCredential オブジェクトが保有している機密情報をすべて解放します。アプリケーションでは、資格が不要になったらすぐにこのメソッドを呼び出して、機密情報が保持されている時間を最小限に抑える必要があります。

例外:
GSSException - メジャーエラーコード GSSException.FAILURE を含む

getName

public GSSName getName()
                throws GSSException
資格が表明するエンティティの名前を取り出します。

戻り値:
エンティティを表す GSSName
例外:
GSSException - メジャーエラーコード GSSException.FAILURE を含む

getName

public GSSName getName(Oid mech)
                throws GSSException
資格が表明するエンティティの GSS-API 機構名を取り出します。このメソッド呼び出しは、ほかの形式の getName によって返された値に対して、canonicalize を呼び出した場合と等価です。

パラメータ:
mech - 機構名を要求する GSS-API 機構の OID
戻り値:
GSSName。要求された GSS-API 機構に標準化されたエンティティを表す
例外:
GSSException - メジャーエラーコード GSSException.BAD_MECHGSSException.FAILURE を含む

getRemainingLifetime

public int getRemainingLifetime()
                         throws GSSException
資格の残りの寿命 (秒単位) で返します。残りの寿命は、配下の GSS-API 機構に固有のすべての資格要素間の最小寿命になります。

戻り値:
この資格の残りの寿命の最小値 (秒単位)。戻り値 INDEFINITE_LIFETIME は資格の寿命が残っていることを示し、戻り値 0 は資格が期限切れになっていることを示す
例外:
GSSException - メジャーエラーコード GSSException.FAILURE を含む
関連項目:
getRemainingInitLifetime(Oid), getRemainingAcceptLifetime(Oid)

getRemainingInitLifetime

public int getRemainingInitLifetime(Oid mech)
                             throws GSSException
資格の残りの寿命 (秒単位) で返します。この期間は、指定された GSS-API 機構を使用して、セキュリティコンテキストを起動できます。このメソッドは、指定された GSS-API 機構に属している、起動側資格要素を照会します。

パラメータ:
mech - 照会する起動側資格要素が属している GSS-API 機構の OID
戻り値:
この資格要素の残りの寿命 (秒単位)。戻り値 INDEFINITE_LIFETIME は資格要素の寿命が残っていることを示し、戻り値 0 は資格要素が期限切れになっていることを示す
例外:
GSSException - メジャーエラーコード GSSException.BAD_MECHGSSException.FAILURE を含む

getRemainingAcceptLifetime

public int getRemainingAcceptLifetime(Oid mech)
                               throws GSSException
資格の残りの寿命 (秒単位) で返します。この期間は、指定された GSS-API 機構を使用して、セキュリティコンテキストを受け入れることができます。このメソッドは、指定された GSS-API 機構に属している、受け入れ側資格要素を照会します。

パラメータ:
mech - 照会する受け入れ側資格要素が属している GSS-API 機構の OID
戻り値:
この資格要素の残りの寿命 (秒単位)。戻り値 INDEFINITE_LIFETIME は資格要素の寿命が残っていることを示し、戻り値 0 は資格要素が期限切れになっていることを示す
例外:
GSSException - メジャーエラーコード GSSException.BAD_MECHGSSException.FAILURE を含む

getUsage

public int getUsage()
             throws GSSException
資格使用モードを返します。つまり、セキュリティコンテキストを、この資格を使用して起動するのか受け入れるのかを返します。ただし、コンテキストの起動または受け入れに使用する GSS-API 機構は返しません。このメソッドを呼び出したあとで、デフォルトの GSS-API 機構が選択されることを前提としています。

戻り値:
戻り値は、INITIATE_ONLYACCEPT_ONLYINITIATE_AND_ACCEPT のいずれか
例外:
GSSException - メジャーエラーコード GSSException.FAILURE を含む

getUsage

public int getUsage(Oid mech)
             throws GSSException
特定の GSS-API 機構の資格使用モードを返します。つまり、指定された配下の GSS-API 機構を使用するセキュリティコンテキストを、この資格を使用して起動するのか受け入れるのかを返します。

パラメータ:
mech - 資格使用モードを検査する GSS-API 機構の OID
戻り値:
戻り値は、INITIATE_ONLYACCEPT_ONLYINITIATE_AND_ACCEPT のいずれか
例外:
GSSException - メジャーエラーコード GSSException.BAD_MECHGSSException.FAILURE を含む

getMechs

public Oid[] getMechs()
               throws GSSException
この資格がサポートしている GSS-API 機構のリストを返します。ただし、コンテキストの起動に使用する資格と受け入れに使用する資格は、識別しません。使用モードを確認するには、返された OID を使用して、アプリケーションから getUsage メソッドを呼び出す必要があります。

戻り値:
サポートされている GSS-API 機構に対応する OID の配列
例外:
GSSException - メジャーエラーコード GSSException.FAILURE を含む

add

public void add(GSSName name,
                int initLifetime,
                int acceptLifetime,
                Oid mech,
                int usage)
         throws GSSException
GSS-API 機構固有の資格要素を既存の資格に追加します。1 回の呼び出しで、1 つの GSS-API 機構の資格を作成できます。

このルーチンは、コンテキストの受け入れ側が、さまざまなセキュリティ機構とクライアントの組み合わせで受け入れ側資格を作成するときに使用します。

このルーチンを使用すると、新しい資格要素が適切に追加されます。新しい資格にその資格要素を追加するには、まず 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_ACCEPTACCEPT_ONLY、または INITIATE_ONLY でなければならない
例外:
GSSException - メジャーエラーコード GSSException.DUPLICATE_ELEMENTGSSException.BAD_MECHGSSException.BAD_NAMETYPEGSSException.NO_CREDGSSException.CREDENTIALS_EXPIREDGSSException.FAILURE を含む

equals

public boolean equals(Object another)
この GSSCredential が指定されたオブジェクトと同じエンティティを表明するかどうかをテストします。これら 2 つの資格は、同じ GSS-API 機構を使用して取得し、同じ主体を参照する必要があります。

オーバーライド:
クラス Object 内の equals
パラメータ:
another - この GSSCredential と比較する GSSCredential
戻り値:
2 つの GSSCredential が同じエンティティを表明する場合は true、そうでない場合は false

hashCode

public int hashCode()
この GSSCredential のハッシュコード値を返します。

オーバーライド:
クラス Object 内の hashCode
戻り値:
hashCode 値

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

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.