ProtectionDomainクラスは、ドメインの特性をカプセル化します。ドメインは、特定のプリンシパルのセットにかわって実行されたときに、インスタンスが権限のセットを付与されるクラスのセットを包含します。
静的権限のセットは、作成時にProtectionDomainにバインドできます。このような権限は、実際のポリシーに関係なくドメインに付与されます。 ただし、動的セキュリティ・ポリシーをサポートするために、権限がチェックされるたびに現在のポリシーによって権限セットに動的にマップされるようにProtectionDomainを構築することもできます。
- 導入されたバージョン:
- 1.2
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明ProtectionDomain(CodeSource codesource, PermissionCollection permissions) 指定されたCodeSourceおよび権限を持つ新しいProtectionDomainを作成します。ProtectionDomain(CodeSource codesource, PermissionCollection permissions, ClassLoader classloader, Principal[] principals) 指定されたCodeSource、権限、ClassLoaderおよびプリンシパルの配列によって修飾された新しいProtectionDomainを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明final ClassLoaderこのドメインのClassLoaderを返します。final CodeSourceこのドメインのCodeSourceを返します。final PermissionCollectionこのドメインに与えられた静的アクセス権を返します。final Principal[]このドメインの主体の配列を返します。booleanimplies(Permission perm) このProtectionDomainがPermissionオブジェクトで表される権限を示しているかどうかを確認します。final booleanこのドメインに静的権限のみが含まれ、権限チェック時に現在のPolicyがチェックされない場合は、trueを返します。toString()ProtectionDomainをStringに変換します。
-
コンストラクタの詳細
-
ProtectionDomain
public ProtectionDomain(CodeSource codesource, PermissionCollection permissions) 指定されたCodeSourceおよび権限を持つ新しいProtectionDomainを作成します。 権限がnullでない場合、渡された権限でsetReadOnly()がコールされます。このドメインに付与される権限は静的です。つまり、
staticPermissionsOnly()メソッドを起動すると、trueが返されます。 これらには、このコンストラクタに渡されたもののみが含まれ、現在のポリシーは参照されません。- パラメータ:
codesource- このドメインに関連したコード・ソースpermissions- このドメインに与えられたアクセス権
-
ProtectionDomain
public ProtectionDomain(CodeSource codesource, PermissionCollection permissions, ClassLoader classloader, Principal[] principals) 指定されたCodeSource、権限、ClassLoaderおよびプリンシパルの配列によって修飾された新しいProtectionDomainを作成します。 権限がnullでない場合、渡された権限でsetReadOnly()がコールされます。このドメインに付与される権限は動的です。つまり、
staticPermissionsOnly()メソッドを起動すると、falseが返されます。 これには、このコンストラクタに渡される静的権限と、権限のチェック時に現在のポリシーによってこのドメインに付与される権限の両方が含まれます。このコンストラクタは通常、
Policyオブジェクトに委任するClassLoadersおよびDomainCombinersによって使用され、このドメインに付与された権限をアクティブに関連付けます。 このコンストラクタは、ポリシー・プロバイダに、指定されたPermissionCollectionを拡張してポリシーの変更を反映する機会を提供します。- パラメータ:
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- チェックする {code Permission} オブジェクト。- 戻り値:
- この
ProtectionDomainによってpermが暗黙的に指定されている場合、true。
-
toString
public String toString()ProtectionDomainをStringに変換します。
-