|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface GSSName
このインタフェースは、単一の GSS-API 主体エンティティをカプセル化します。アプリケーションでは、GSSManager
クラスに含まれる createName
メソッドのいずれかを使用してこのインタフェースの実装を取得します。GSSName は、エンティティの複数の表現、つまり複数のプリミティブ名前要素 (サポートされている配下の機構ごとに 1 つずつ) で構成されます。GSS では、1 つだけの機構の要素を含む GSSName を機構名 (MN) と呼びます。
主体の識別に使用される名前空間は、認証機構ごとに異なります。このため、複数機構環境では、GSS-API のネーミングサポートが複雑になります。また、単一機構環境の場合でも、配下の機構が複数の名前空間をサポートしているときは、同様に複雑になります。名前の形式とその定義は、Oid's
によって識別されます。一部の標準型は、このインタフェースに定義されています。名前の形式は、その名前型の一意の Oid
に基づいて派生させることができます。
次のコード例では、GSSName
インタフェースを使用しています。まず、GSSName
を作成し、それを MN に変換します。次に、名前を比較し、その名前のプリント可能な表現を取得します。最後に、その名前を byte 配列にエクスポートしてから再インポートし、新しい GSSName
を取得します。
GSSManager manager = GSSManager.getInstance(); // create a host based service name GSSName name = manager.createName("service@host", GSSName.NT_HOSTBASED_SERVICE); Oid krb5 = new Oid("1.2.840.113554.1.2.2"); GSSName mechName = name.canonicalize(krb5); // the above two steps are equivalent to the following GSSName mechName = manager.createName("service@host", GSSName.NT_HOSTBASED_SERVICE, krb5); // perform name comparison if (name.equals(mechName)) print("Names are equals."); // obtain textual representation of name and its printable // name type print(mechName.toString() + mechName.getStringNameType().toString()); // export and re-import the name byte [] exportName = mechName.export(); // create a new name object from the exported buffer GSSName newName = manager.createName(exportName, GSSName.NT_EXPORT_NAME);
export()
,
equals(GSSName)
,
GSSManager.createName(String, Oid)
,
GSSManager.createName(String, Oid, Oid)
,
GSSManager.createName(byte[], Oid)
フィールドの概要 | |
---|---|
static Oid |
NT_ANONYMOUS
匿名のエンティティを表す名前型です。 |
static Oid |
NT_EXPORT_NAME
エクスポートされた名前を示す名前型です。 |
static Oid |
NT_HOSTBASED_SERVICE
ホストベースのサービスの名前型を示す OID です。 |
static Oid |
NT_MACHINE_UID_NAME
ローカルシステム上のユーザに対応する数値ユーザ ID を示す名前型です (Uid など)。 |
static Oid |
NT_STRING_UID_NAME
ローカルシステム上のユーザの数値ユーザ ID を表す、数字の文字列を示す名前型です。 |
static Oid |
NT_USER_NAME
ローカルシステム上の特定のユーザを示す名前型です。 |
メソッドの概要 | |
---|---|
GSSName |
canonicalize(Oid mech)
特定の機構に対して標準化された名前を作成します。 |
boolean |
equals(GSSName another)
2 つの GSSName オブジェクトを比較して、それらが同じエンティティを参照しているかどうかを検査します。 |
boolean |
equals(Object another)
この GSSName オブジェクトを、GSSName かもしれない別のオブジェクトと比較します。 |
byte[] |
export()
標準化された機構名 (MN) を連続するバイト表現として返します。 |
Oid |
getStringNameType()
この名前のプリント可能な表現の名前型を返します。 |
int |
hashCode()
この GSSName のハッシュコード値を返します。 |
boolean |
isAnonymous()
この名前オブジェクトが匿名のエンティティを表しているかどうかテストします。 |
boolean |
isMN()
この名前オブジェクトが機構名 (MN) を表しているかどうかテストします。 |
String |
toString()
GSSName オブジェクトのテキスト表現を返します。 |
フィールドの詳細 |
---|
static final Oid NT_HOSTBASED_SERVICE
この名前型は、次の OID 値を表します。
{ 1(iso), 3(org), 6(dod), 1(internet), 5(security), 6(nametypes), 2(gss-host-based-services) }
static final Oid NT_USER_NAME
この名前型は、次の OID 値を表します。
{ iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) user_name(1) }
static final Oid NT_MACHINE_UID_NAME
この名前型は、次の OID 値を表します。
{ iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) machine_uid_name(2) }
static final Oid NT_STRING_UID_NAME
この名前型は、次の OID 値を表します。
{ iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) string_uid_name(3) }
static final Oid NT_ANONYMOUS
この名前型は、次の OID 値を表します。
{ 1(iso), 3(org), 6(dod), 1(internet), 5(security), 6(nametypes), 3(gss-anonymous-name) }
static final Oid NT_EXPORT_NAME
この名前型は、次の OID 値を表します。
{ 1(iso), 3(org), 6(dod), 1(internet), 5(security), 6(nametypes), 4(gss-api-exported-name) }
メソッドの詳細 |
---|
boolean equals(GSSName another) throws GSSException
GSSName
オブジェクトを比較して、それらが同じエンティティを参照しているかどうかを検査します。
another
- この名前と比較する GSSName
GSSException
- 名前を比較できない場合、メジャーエラーコード GSSException.BAD_NAMETYPE
、GSSException.FAILURE
を含むboolean equals(Object another)
GSSName
オブジェクトを、GSSName
かもしれない別のオブジェクトと比較します。このメソッドの動作は、GSSException をスローしない点を除いて、equals
と同じです。エラーが発生した場合は false を返します。
Object
内の equals
another
- この名前と比較するオブジェクト
GSSName
で、2 つの名前が同じエンティティを参照している場合は trueequals(GSSName)
int hashCode()
Object
内の hashCode
Object.equals(java.lang.Object)
,
Hashtable
GSSName canonicalize(Oid mech) throws GSSException
mech
- この名前を標準化するときの基準とする機構の OID
GSSName
GSSException
- メジャーエラーコード GSSException.BAD_MECH
、GSSException.BAD_NAMETYPE
、GSSException.BAD_NAME
、GSSException.FAILURE
を含むbyte[] export() throws GSSException
エクスポートされた名前は、大きなアクセス制御リストで使用します。アクセス制御リストが大きい場合は、各名前に対して GSSName
オブジェクトを作成し、ACL から equals メソッドを呼び出すときのオーバーヘッドが大きくなることがあります。
エクスポートされた名前を再インポートするには、byte 配列のファクトリメソッド GSSManager.createName
を使用し、名前型のオブジェクト識別子として NT_EXPORT_NAME を指定します。その結果として返される GSSName
名も MN です。
GSSException
- メジャーエラーコード GSSException.BAD_NAME
、GSSException.BAD_NAMETYPE
、GSSException.FAILURE
を含むString toString()
GSSName
オブジェクトのテキスト表現を返します。プリントされた名前の形式 (返される文字列の構文を決定する) を取り出す場合は、getStringNameType
メソッドを使用します。
Object
内の toString
Oid getStringNameType() throws GSSException
_toString
メソッドからは、この名前型で返されます。
GSSException
- メジャーエラーコード GSSException.FAILURE
を含むboolean isAnonymous()
boolean isMN()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。