|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.security.Permission
javax.security.auth.PrivateCredentialPermission
public final class PrivateCredentialPermission
このクラスは、特定の Subject に属する非公開 Credential をアクセスから保護します。Subject は Principal の Set で表されます。
この Permission のターゲット名は、Credential のクラス名および Principal の Set を指定します。この Permission のアクションに有効な値は read だけです。ターゲット名は次の構文に従う必要があります。
CredentialClass {PrincipalClass "PrincipalName"}*
たとえば以下のアクセス権は、com.sun.Principal を名前「duke」で保持する Subject が所有するcom.sun.PrivateCredential へのアクセスを許可します。以下に示す例すべてと同様、この例でも単純化するために Codebase、Signedby、Principal の情報を grant 文に含んでいませんが、実際のポリシー構成では必要に応じて指定する必要があります。
grant {
permission javax.security.auth.PrivateCredentialPermission
"com.sun.PrivateCredential com.sun.Principal \"duke\"",
"read";
};
CredentialClass が「*」の場合は、指定した Subject に属するすべての非公開 Credential へのアクセスが付与されます。「PrincipalName」が「*」の場合は、実際の PrincipalName に関係なく、指定した Principal を保持する任意の Subject が所有する、指定した Credential へのアクセスが許可されます。たとえば、a.b.Principal を保持する任意の Subject が所有する a.b.Credential へのアクセスを許可するには次のようにします。
grant {
permission javax.security.auth.PrivateCredentialPermission
"a.b.Credential a.b.Principal "*"",
"read";
};
PrincipalClass と「PrincipalName」の両方が「*」である場合は、任意の Subject が所有する指定した Credential へのアクセスが許可されます。
さらに、PrincipalClass と PrincipalName のペアは繰り返すことができます。
grant {
permission javax.security.auth.PrivateCredentialPermission
"a.b.Credential a.b.Principal "duke" c.d.Principal "dukette"",
"read";
};
上記の例では、非公開 Credential である a.b.Credential へのアクセスが許可されています。この非公開 Credential は、名前 duke の a.b.Principal と名前 dukette の c.d.Principal の少なくとも 2 つの関連する Principal を持つ Subject に属しています。
| コンストラクタの概要 | |
|---|---|
PrivateCredentialPermission(String name,
String actions)
指定した name で、新しい PrivateCredentialPermission を作成します。 |
|
| メソッドの概要 | |
|---|---|
boolean |
equals(Object obj)
2 つの PrivateCredentialPermission の同一性を判定します。 |
String |
getActions()
このアクションの「標準的な文字列表現」を返します。 |
String |
getCredentialClass()
この PrivateCredentialPermission に関連した Credential の Class 名を返します。 |
String[][] |
getPrincipals()
この PrivateCredentialPermission に関連する Principal クラスと名前を返します。 |
int |
hashCode()
このオブジェクトのハッシュコード値を返します。 |
boolean |
implies(Permission p)
この PrivateCredentialPermission オブジェクトが、指定された Permission を示すかどうかを判定します。 |
PermissionCollection |
newPermissionCollection()
PermissionCollection にある PrivateCredentialPermissions の同種コレクションを返します。 |
| クラス java.security.Permission から継承されたメソッド |
|---|
checkGuard, getName, toString |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| コンストラクタの詳細 |
|---|
public PrivateCredentialPermission(String name,
String actions)
name で、新しい PrivateCredentialPermission を作成します。name には、Credential クラスと Principal の Set の両方を指定します。
name - Credential クラスおよび Principal の Set を指定する名前 actions - Credential が読み込み可能であることを指定するアクション
IllegalArgumentException - name が正しい構文に適合しない場合、あるいは action が read ではない場合| メソッドの詳細 |
|---|
public String getCredentialClass()
PrivateCredentialPermission に関連した Credential の Class 名を返します。
PrivateCredentialPermission に関連付けられた Credential の Class 名public String[][] getPrincipals()
PrivateCredentialPermission に関連する Principal クラスと名前を返します。情報は 2 次元配列 (array[x][y]) で返されます。x の値は、Principal クラスと名前のペアの数に対応しています。y==0 のとき y は Principal クラスの値に対応し、y==1 のときは Principal 名の値に対応します。たとえば array[0][0] は、配列の最初にある Principal のクラス名に対応します。array[0][1] は、配列の最初にある Principal の Principal 名に対応します。
PrivateCredentialPermission に関連付けられた Principal クラスと名前public boolean implies(Permission p)
PrivateCredentialPermission オブジェクトが、指定された Permission を示すかどうかを判定します。
このメソッドは次の場合に true を返します。
[* P1 "duke"] implies [a.b.Credential P1 "duke"].
[C1 P1 "duke"] implies [C1 P1 "duke" P2 "dukette"].
[C1 P2 "dukette"] implies [C1 P1 "duke" P2 "dukette"].
Permission 内の impliesp - チェック対象の Permission
PrivateCredentialPermission オブジェクトに指定された Permission が含まれている場合は true、含まれていない場合は falsepublic boolean equals(Object obj)
PrivateCredentialPermission の同一性を判定します。obj が PrivateCredentialPermission であり、このオブジェクトと同じ資格クラスおよび同じ Principal を保持することを確認します。各 Permission のターゲット名での Principal の順番は関係ありません。
Permission 内の equalsobj - このオブジェクトと等しいかどうかを判定するオブジェクト
PrivateCredentialPermission であり、かつ、このオブジェクトと同じ資格クラスおよび同じ Principal を保持する場合は trueObject.hashCode(),
Hashtablepublic int hashCode()
Permission 内の hashCodeObject.equals(java.lang.Object),
Hashtablepublic String getActions()
Permission 内の getActionspublic PermissionCollection newPermissionCollection()
PermissionCollection にある PrivateCredentialPermissions の同種コレクションを返します。そのような PermissionCollection は定義されていないので、このメソッドは常に null を返します。
Permission 内の newPermissionCollection
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。