モジュール java.base
パッケージ java.security

クラスAccessControlContext

java.lang.Object
java.security.AccessControlContext

@Deprecated(since="17", forRemoval=true) public final class AccessControlContext extends Object
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
このクラスは、非推奨であり、将来のリリースで削除される可能性があります。「セキュリティ・マネージャ」と組み合わせて使用すると便利です。 したがって、このクラスも非推奨となり、削除される可能性があります。 Security Managerまたはこのクラスの交換はありません。
AccessControlContextは、それがカプセル化するコンテキストに基づいて、システム・リソースへのアクセスを許可するかどうかを決定するために使用されます。

さらに具体的に説明すると、AccessControlContextはコンテキストをカプセル化し、checkPermissionというメソッドを持っています。このメソッドは、AccessControllerクラスのcheckPermissionメソッドと同等ですが、1つ違いがあります。それは、AccessControlContextのcheckPermissionメソッドは、現在実行中のスレッドのコンテキストではなく、AccessControlContextがカプセル化するコンテキストに基づいて、アクセスを許可するかどうかを決定することです。

したがって、AccessControlContextを使用するのは、指定したコンテキスト内で行うセキュリティ・チェックを、実際には別のコンテキスト内から(たとえば、ワーカー・スレッド内から)行う必要がある場合です。

AccessControlContextは、AccessController.getContextメソッドを呼び出すと作成されます。 getContextメソッドは、現在の呼出しコンテキストをAccessControlContextオブジェクトに格納して返します。 呼出しの例を次に示します。

   AccessControlContext acc = AccessController.getContext()
 

以降、別のコンテキスト内のコードは、以前に保存したAccessControlContextオブジェクトのcheckPermissionメソッドを呼び出すことができます。 呼出しの例を次に示します。

   acc.checkPermission(permission)
 

導入されたバージョン:
1.2
関連項目:
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    指定されたAccessControlContextおよびDomainCombinerを使って、新しいAccessControlContextを作成します。
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    指定されたProtectionDomainの配列でAccessControlContextを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    現在有効なセキュリティ・ポリシーとこのオブジェクトのコンテキストに基づいて、指定されたアクセス権によって示されるアクセス要求が許可されるか、拒否されるかを決定します。
    boolean
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    2つのAccessControlContextオブジェクトが同等かどうかを判定します。
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    このAccessControlContextに関連付けられたDomainCombinerを取得します。
    int
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    このコンテキストのハッシュ・コード値を返します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • AccessControlContext

      public AccessControlContext(ProtectionDomain[] context)
      削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
      指定されたProtectionDomainの配列でAccessControlContextを作成します。 コンテキストをnullにすることはできません。 重複した領域は、コンテキストから削除されます。
      パラメータ:
      context - このコンテキストに関連したProtectionDomain。 重複しない領域が配列からコピーされる。 その後配列が変更されても、このAccessControlContextがその影響を受けることはない。
      例外:
      NullPointerException - contextnullである場合
    • AccessControlContext

      public AccessControlContext(AccessControlContext acc, DomainCombiner combiner)
      削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
      指定されたAccessControlContextおよびDomainCombinerを使って、新しいAccessControlContextを作成します。 このコンストラクタにより、DomainCombinerが、提供済みのAccessControlContextに関連付けられます。
      パラメータ:
      acc - 提供されたDomainCombinerに関連付けられたAccessControlContext
      combiner - 提供されたAccessControlContextに関連付けられているDomainCombiner
      例外:
      NullPointerException - 指定されたcontextnullである場合。
      SecurityException - セキュリティ・マネージャがインストールされ、呼出し元が「createAccessControlContext」を持たない場合SecurityPermission
      導入されたバージョン:
      1.3
  • メソッドの詳細

    • getDomainCombiner

      public DomainCombiner getDomainCombiner()
      削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
      このAccessControlContextに関連付けられたDomainCombinerを取得します。
      戻り値:
      このAccessControlContextに関連付けられているDomainCombiner。存在しない場合はnull
      例外:
      SecurityException - セキュリティ・マネージャがインストールされ、呼出し元が「getDomainCombiner」を持たない場合SecurityPermission
      導入されたバージョン:
      1.3
    • checkPermission

      public void checkPermission(Permission perm) throws AccessControlException
      削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
      現在有効なセキュリティ・ポリシーとこのオブジェクトのコンテキストに基づいて、指定されたアクセス権によって示されるアクセス要求が許可されるか、拒否されるかを決定します。 アクセス権が、コンテキスト内の個々のProtectionDomainに含まれている場合にかぎり、要求は許可されます。 そうでない場合、要求は拒否されます。

      このメソッドは、アクセス要求が許可される場合には何もしないで復帰し、そうでない場合には適切なAccessControlExceptionをスローします。

      パラメータ:
      perm - 要求されたアクセス権。
      例外:
      AccessControlException - 現在のセキュリティ・ポリシーと、このオブジェクトがカプセル化したコンテキストに基づいて、指定されたアクセス権が許可されない場合。
      NullPointerException - 確認するためのアクセス権がnullの場合。
    • equals

      public boolean equals(Object obj)
      削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
      2つのAccessControlContextオブジェクトが同等かどうかを判定します。 つまり、objがAccessControlContextであり、このコンテキストと同じProtectionDomainのセットを持っているかどうかを調べます。
      オーバーライド:
      equals、クラスObject
      パラメータ:
      obj - このオブジェクトと等しいかどうかが判定されるオブジェクト。
      戻り値:
      objがAccessControlContextで、このコンテキストと同じProtectionDomainのセットを持っている場合はtrue、そうでない場合はfalse。
      関連項目:
    • hashCode

      public int hashCode()
      削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
      このコンテキストのハッシュ・コード値を返します。 ハッシュ・コードを計算するには、コンテキストにあるすべての保護領域のハッシュ・コードの排他的論理和を求めます。
      オーバーライド:
      hashCode、クラスObject
      戻り値:
      このコンテキストのハッシュ・コード値。
      関連項目: