アクセス権の静的セットは、構築されたときにProtectionDomainにバインドされています。そのようなアクセス権は、Policyに関係なくすべてドメインに与えられています。 しかし、動的なセキュリティ・ポリシーをサポートするには、アクセス権を確認するときは常に現在のPolicyによってアクセス権のセットに動的にマップされているようにProtectionDomainも構築します。
- 導入されたバージョン:
- 1.2
-
コンストラクタのサマリー
コンストラクタ説明ProtectionDomain
(CodeSource codesource, PermissionCollection permissions) 指定されたCodeSourceとPermissionsで新規ProtectionDomainを作成します。ProtectionDomain
(CodeSource codesource, PermissionCollection permissions, ClassLoader classloader, Principal[] principals) 指定されたCodeSource、Permissions、ClassLoader、およびPrincipals配列で新規ProtectionDomainを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明final ClassLoader
このドメインのClassLoaderを返します。final CodeSource
このドメインのCodeSourceを返します。final PermissionCollection
このドメインに与えられた静的アクセス権を返します。final Principal[]
このドメインの主体の配列を返します。boolean
implies
(Permission perm) このProtectionDomainが、Permissionオブジェクトで表現されるアクセス権を包含するかどうかを判定します。final boolean
このドメインに静的権限のみが含まれていて、権限チェック時に現在のPolicy
をチェックしていない場合はtrueを返します。toString()
ProtectionDomainをStringに変換します。
-
コンストラクタの詳細
-
ProtectionDomain
public ProtectionDomain(CodeSource codesource, PermissionCollection permissions) 指定されたCodeSourceとPermissionsで新規ProtectionDomainを作成します。 アクセス権オブジェクトがnullでない場合、setReadOnly()
が渡されたPermissionsオブジェクトで呼び出されます。このドメインに付与されたアクセス権は静的です。つまり、
staticPermissionsOnly()
メソッドを呼び出すとtrueが返されます。 これらは、このコンストラクタに渡されたものだけを含み、現在のポリシーは参照されません。- パラメータ:
codesource
- このドメインに関連したコード・ソースpermissions
- このドメインに与えられたアクセス権
-
ProtectionDomain
public ProtectionDomain(CodeSource codesource, PermissionCollection permissions, ClassLoader classloader, Principal[] principals) 指定されたCodeSource、Permissions、ClassLoader、およびPrincipals配列で新規ProtectionDomainを作成します。 アクセス権オブジェクトがnullでない場合、setReadOnly()
が渡されたPermissionsオブジェクトで呼び出されます。このドメインに付与されたアクセス権は動的です。つまり、
staticPermissionsOnly()
メソッドを呼び出すとfalseが返されます。 このコンストラクタに渡された静的なアクセス許可と、アクセス許可がチェックされたときに現在のポリシーによってこのドメインに与えられたアクセス許可の両方が含まれます。通常、このコンストラクタは
ClassLoaders
とDomainCombiners
によって使用されます。ClassLoaderとDomainCombinerは、このドメインに許可されたアクセス権にアクティブに関連付けるためにPolicy
に委譲されます。 このコンストラクタでは、ポリシーの変更を反映する指定されたPermissionCollectionを拡張するため、Policyプロバイダに機会を提供します。- パラメータ:
codesource
- このドメインに関連したCodeSourcepermissions
- このドメインに与えられたアクセス権classloader
- このドメインに関連したClassLoaderprincipals
- このドメインに関連付けられたPrincipalの配列。 この配列の内容は、後続の変更に影響されないようにコピーされる。- 導入されたバージョン:
- 1.4
- 関連項目:
-
-
メソッドの詳細
-
getCodeSource
public final CodeSource getCodeSource()このドメインのCodeSourceを返します。- 戻り値:
- このドメインのCodeSource。nullになることもある。
- 導入されたバージョン:
- 1.2
-
getClassLoader
public final ClassLoader getClassLoader()このドメインのClassLoaderを返します。- 戻り値:
- このドメインのClassLoader。nullになることもある。
- 導入されたバージョン:
- 1.4
-
getPrincipals
public final Principal[] getPrincipals()このドメインの主体の配列を返します。- 戻り値:
- このドメインに対するnullでない原則の配列。 このメソッドが呼び出されるたびに新しい配列を返す。
- 導入されたバージョン:
- 1.4
-
getPermissions
public final PermissionCollection getPermissions()このドメインに与えられた静的アクセス権を返します。- 戻り値:
- このドメインのアクセス権の静的セット。nullになることもある。
- 関連項目:
-
staticPermissionsOnly
public final boolean staticPermissionsOnly()このドメインに静的権限のみが含まれていて、権限チェック時に現在のPolicy
をチェックしていない場合はtrueを返します。- 戻り値:
- このドメインに静的なアクセス権のみが含まれている場合はtrue。
- 導入されたバージョン:
- 9
-
implies
public boolean implies(Permission perm) このProtectionDomainが、Permissionオブジェクトで表現されるアクセス権を包含するかどうかを判定します。評価されるアクセス権のセットは、ProtectionDomainがアクセス権の静的セットで構築されたか、あるいは動的にマップされたアクセス権のセットにバインドされているかによって変わります。
staticPermissionsOnly()
メソッドがtrueを返す場合、パーミッションは構築時に提供されたPermissionCollectionに対してのみチェックされます。そうでない場合、パーミッションは、構築時に指定されたPermissionCollectionと現在のポリシー・バインディングの組み合わせに対してチェックされます。
- パラメータ:
perm
- チェックするPermissionオブジェクト。- 戻り値:
perm
がこのProtectionDomainによって暗示されている場合はtrue。
-
toString
public String toString()ProtectionDomainをStringに変換します。
-