java.lang.Object
java.security.Permission
javax.security.auth.PrivateCredentialPermission
- すべての実装されたインタフェース:
Serializable
,Guard
public final class PrivateCredentialPermission extends Permission
このクラスは、特定の
Subject
に属する非公開資格をアクセスから保護します。 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
に属するすべての非公開資格へのアクセスが許可されます。 「PrincipalName」が「*」の場合は、実際のPrincipalNameに関係なく、指定したPrincipal
を保持する任意のSubject
が所有する、指定した資格へのアクセスが許可されます。 たとえば、a.b.Principalを保持する任意のSubject
が所有するa.b.Credentialへのアクセスを許可するには次のようにします。
grant { permission javax.security.auth.PrivateCredentialPermission "a.b.Credential a.b.Principal "*"", "read"; };PrincipalClassとPrincipalNameの両方が「*」になっている場合は、任意の
Subject
によって所有されている指定した資格へのアクセスが許可されます。
また、PrincipalClass/PrincipalNameの対は、繰返し指定できます。
grant { permission javax.security.auth.PrivateCredentialPermission "a.b.Credential a.b.Principal "duke" c.d.Principal "dukette"", "read"; };上記の例では、「duke」という名前の「a.b.Principal」と、「dukette」という名前の「c.d.Principal」の少なくとも2つの関連するPrincipalを持つ
Subject
に属する非公開資格「a.b.Credential」へのアクセスが許可されます。- 導入されたバージョン:
- 1.4
- 関連項目:
- 直列化された形式
-
コンストラクタのサマリー
コンストラクタ説明PrivateCredentialPermission(String name, String actions)
指定されたname
で新しいPrivateCredentialPermission
を作成します。 -
メソッドのサマリー
修飾子と型メソッド説明boolean
2つのPrivateCredentialPermission
オブジェクトが等しいかどうかを判定します。アクションの「正規の文字列表現」を返します。このPrivateCredentialPermission
に関連付けられたCredentialのClass名を返します。String[][]
このPrivateCredentialPermission
に関連付けられたPrincipal
クラスと名前を返します。int
hashCode()
このオブジェクトのハッシュ・コード値を返します。boolean
implies(Permission p)
このPrivateCredentialPermission
が、指定されたPermission
を示すかどうかを判定します。PermissionCollection
にあるPrivateCredentialPermissionsの同種コレクションを返します。クラス java.security.Permissionで宣言されたメソッド
checkGuard, getName, toString
-
コンストラクタの詳細
-
PrivateCredentialPermission
指定されたname
で新しいPrivateCredentialPermission
を作成します。name
には、CredentialクラスとPrincipal
のSetの両方を指定します。- パラメータ:
name
- CredentialクラスおよびPrincipal
のSetを指定する名前。actions
- Credentialが読込み可能であることを指定するアクション。- 例外:
IllegalArgumentException
-name
の構文が正しくない場合、またはactions
が「read」(読み取り)ではない場合。
-
-
メソッドの詳細
-
getCredentialClass
public String getCredentialClass()このPrivateCredentialPermission
に関連付けられたCredentialのClass名を返します。- 戻り値:
- この
PrivateCredentialPermission
に関連付けられたCredentialのClass名。
-
getPrincipals
public String[][] getPrincipals()このPrivateCredentialPermission
に関連付けられたPrincipal
クラスと名前を返します。 情報は2次元配列(array[x][y])で返されます。 xの値は、Principal
クラスと名前のペアの数に対応しています。 y==0のときはPrincipal
クラスの値に対応し、y==1のときはPrincipal
名の値に対応します。 たとえばarray[0][0]は、配列の最初にあるPrincipal
のクラス名に対応します。array[0][1]は、配列の最初にあるPrincipal
のPrincipal
名に対応します。- 戻り値:
- この
PrivateCredentialPermission
に関連付けられたPrincipal
クラスと名前を返します。
-
implies
public boolean implies(Permission p)このPrivateCredentialPermission
が、指定されたPermission
を示すかどうかを判定します。このメソッドは次の場合にtrueを返します。
-
p
がPrivateCredentialPermissionのインスタンスであり、かつ -
p
のターゲット名が、このオブジェクトのターゲット名に含まれている場合。 次に例を示します。[* 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"].
- 定義:
implies
、クラス:Permission
- パラメータ:
p
- チェック対象のPermission
。- 戻り値:
- この
PrivateCredentialPermission
が指定されたPermission
を示す場合はtrue、示さない場合はfalse。
-
-
equals
public boolean equals(Object obj)2つのPrivateCredentialPermission
オブジェクトが等しいかどうかを判定します。obj
がPrivateCredentialPermission
であり、このオブジェクトと同じ資格クラスおよび同じPrincipalを保持することを確認します。 各Permissionのターゲット名でのPrincipalの順番は関係ありません。- 定義:
equals
、クラス:Permission
- パラメータ:
obj
- このオブジェクトと等しいかどうかが判定されるオブジェクト。- 戻り値:
- objが
PrivateCredentialPermission
であり、かつ、このオブジェクトと同じ資格クラスおよび同じPrincipalを保持する場合はtrue。 - 関連項目:
Object.hashCode()
、HashMap
-
hashCode
public int hashCode()このオブジェクトのハッシュ・コード値を返します。- 定義:
hashCode
、クラス:Permission
- 戻り値:
- このオブジェクトのハッシュ・コード値。
- 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
getActions
public String getActions()アクションの「正規の文字列表現」を返します。 このメソッドは常に「read」というString値を返します。- 定義:
getActions
、クラス:Permission
- 戻り値:
- アクション(常に「read」を返す)。
-
newPermissionCollection
public PermissionCollection newPermissionCollection()PermissionCollection
にあるPrivateCredentialPermissionsの同種コレクションを返します。 そのようなPermissionCollection
は定義されていないので、このメソッドは常にnull
を返します。- オーバーライド:
newPermissionCollection
、クラス:Permission
- 戻り値:
- null (いかなる場合でも)。
-