public interface GSSName
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);
| 修飾子と型 | フィールドと説明 |
|---|---|
static Oid |
NT_ANONYMOUS
匿名のエンティティーを表す名前型です。
|
static Oid |
NT_EXPORT_NAME
エクスポートされた名前を示す名前型です。export メソッドによって生成されます。
|
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()
この名前のプリント可能な表現の名前型を返します。
toString メソッドからは、この名前型で返されます。 |
int |
hashCode()
この GSSName のハッシュコード値を返します。
|
boolean |
isAnonymous()
この名前オブジェクトが匿名のエンティティーを表しているかどうかテストします。
|
boolean |
isMN()
この名前オブジェクトがメカニズム名 (MN) を表しているかどうかテストします。
|
String |
toString()
GSSName オブジェクトのテキスト表現を返します。 |
static final Oid NT_HOSTBASED_SERVICE
これは次の OID 値を表します。
{ iso(1) member-body(2) United States(840) mit(113554) infosys(1) gssapi(2) generic(1) service_name(4) }
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 - この名前と比較する GSSNameGSSException - 名前を比較できない場合、次のメジャーエラーコードを含む。GSSException.BAD_NAMETYPE, GSSException.FAILUREboolean equals(Object another)
GSSName オブジェクトを、GSSName である可能性がある別のオブジェクトと比較します。このメソッドの動作は、GSSException をスローしない点を除いて、equals と同じです。エラーが発生した場合は false を返します。equals、クラス: Objectanother - この名前と比較するオブジェクトGSSName で、2 つの名前が同じエンティティーを参照している場合は true。equals(GSSName)int hashCode()
hashCode、クラス: ObjectObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object)GSSName canonicalize(Oid mech) throws GSSException
mech - この名前の標準化がリクエストされるときの基準とするメカニズムの OID。GSSName。GSSException - 次のメジャーエラーコードを含む。GSSException.BAD_MECH, GSSException.BAD_NAMETYPE, GSSException.BAD_NAME, GSSException.FAILUREbyte[] export()
throws GSSException
エクスポートされた名前は、大きなアクセス制御リストで使用します。アクセス制御リストが大きい場合は、各名前に対して GSSName オブジェクトを作成し、ACL から equals メソッドを呼び出すときのオーバーヘッドが大きくなることがあります。
エクスポートされた名前を再インポートするには、byte 配列のファクトリメソッド GSSManager.createName を使用し、名前型のオブジェクト識別子として NT_EXPORT_NAME を指定します。その結果として返される GSSName 名も MN です。
GSSException - 次のメジャーエラーコードを含む。GSSException.BAD_NAME, GSSException.BAD_NAMETYPE, GSSException.FAILUREString toString()
GSSName オブジェクトのテキスト表現を返します。出力された名前の形式 (返される文字列の構文を決定する) を取り出す場合は、getStringNameType メソッドを使用します。Oid getStringNameType() throws GSSException
toString メソッドからは、この名前型で返されます。GSSException - 次のメジャーエラーコードを含む。 GSSException.FAILUREboolean isAnonymous()
boolean isMN()
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.