パッケージ jakarta.security.jacc

インターフェース Policy


public interface Policy
Policy オブジェクトは、呼び出し元プリンシパル (認証されていないプリンシパルを含む) がセキュリティに依存する操作を実行する権限を持っているかどうかを判断するロールを果たします。

ポリシーは、呼び出し元プリンシパルのホルダーとして SubjectSE を使用します。サブジェクトは「プリンシパルのバッグ」であるため、潜在的に多くのプリンシパルのうちどれが呼び出し元プリンシパルを表すかを指定しません。低レベルのアーティファクト (セキュリティシステムとの Jakarta EE ランタイム相互作用を目的としたもの) として、これにより、ランタイム固有の動作と最適化が可能になります。

ポリシーは通常、特定のポリシーコンテキストに対して PolicyConfiguration インスタンスが保持する Permission インスタンスを使用しますが、必ずではありません。Jakarta EE Servlet 環境では、これらには、アノテーションを介して web.xml の XML で表現されるか、Jakarta Servlet API を使用してプログラムで設定される、変換されたセキュリティ制約が含まれます。

作成者:
Arjan Tijms
  • 方法の概要

    修飾子と型
    メソッド
    説明
    @{subject} パラメーターに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。
    default boolean
    implies(PermissionSE permissionToBeChecked)
    このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が匿名 (認証されていない) 呼び出し元プリンシパルに付与されているかどうかを確認します。
    default boolean
    implies(PermissionSE permissionToBeChecked, SetSE<PrincipalSE> principals)
    渡されるプリンシパルのセットに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。
    default boolean
    implies(PermissionSE permissionToBeChecked, SubjectSE subject)
    このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が @{subject} パラメーター内の呼び出し元プリンシパルに付与されているかどうかを確認します。
    default boolean
    impliesByRole(PermissionSE permissionToBeChecked, SubjectSE subject)
    このメソッドは、呼び出し元プリンシパルに関連付けられた 1 つ以上のロールに基づいて、@{permissionToBeChecked} パラメーターによって表されるアクセス許可が、@{subject} パラメーター内で呼び出し元プリンシパルに付与されているかどうかを確認します。
    default boolean
    isExcluded(PermissionSE permissionToBeChecked)
    このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによって除外されているかどうかを確認します。
    default boolean
    isUnchecked(PermissionSE permissionToBeChecked)
    このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによってチェックされていないかどうかを確認します。
    default void
    オプションの方法。TODO: 必要ですか?
  • 方法の詳細

    • implies

      default boolean implies(PermissionSE permissionToBeChecked, SubjectSE subject)
      このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が @{subject} パラメーター内の呼び出し元プリンシパルに付与されているかどうかを確認します。
      パラメーター:
      permissionToBeChecked - このポリシーがチェックする権限
      subject - (隠蔽された) 呼び出し元プリンシパルの保持者
      戻り値:
      呼び出し元プリンシパルがリクエストされたアクセス許可を持っている場合は true、それ以外の場合は false
    • isExcluded

      default boolean isExcluded(PermissionSE permissionToBeChecked)
      このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによって除外されているかどうかを確認します。除外されているということは、権限がどの呼び出し元にも付与されていないことを意味します。
      パラメーター:
      permissionToBeChecked - このポリシーがチェックする権限
      戻り値:
      リクエストされた権限が除外されている場合は true、そうでない場合は false
    • isUnchecked

      default boolean isUnchecked(PermissionSE permissionToBeChecked)
      このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによってチェックされていないかどうかを確認します。チェックされていないということは、認証されているかどうかに関係なく、すべての呼び出し元に権限が付与されることを意味します。
      パラメーター:
      permissionToBeChecked - このポリシーがチェックする権限
      戻り値:
      リクエストされた権限がチェックされていない場合は true、そうでない場合は false
    • impliesByRole

      default boolean impliesByRole(PermissionSE permissionToBeChecked, SubjectSE subject)
      このメソッドは、呼び出し元プリンシパルに関連付けられた 1 つ以上のロールに基づいて、@{permissionToBeChecked} パラメーターによって表されるアクセス許可が、@{subject} パラメーター内で呼び出し元プリンシパルに付与されているかどうかを確認します。
      パラメーター:
      permissionToBeChecked - このポリシーがチェックする権限
      subject - (隠蔽された) 呼び出し元プリンシパルの保持者
      戻り値:
      呼び出し元プリンシパルがリクエストされたアクセス許可を持っている場合は true、それ以外の場合は false
    • getPermissionCollection

      PermissionCollectionSE getPermissionCollection(SubjectSE subject)
      @{subject} パラメーターに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。

      ポリシーは、すべてのアクセス認可を提供できない可能性がある リモート認可システムを表すことができるため、このメソッドではすべてのアクセス認可が実際に返されることを保証できません。ただし、ポリシーは、Jakarta EE アプリケーション内で宣言または設定されている少なくともすべてのアクセス認可を返す必要があります。このようなアクセス認可の例としては、アノテーションを介して、または Jakarta Servlet API を使用してプログラム的に @{web.xml}, の Jakarta Servlet セキュリティ制約式から変換されたアクセス認可が挙げられます。

      パラメーター:
      subject - (隠蔽された) 呼び出し元プリンシパルの保持者
      戻り値:
      呼び出し元プリンシパルに関連付けられた権限のコレクション
    • implies

      default boolean implies(PermissionSE permissionToBeChecked)
      このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が匿名 (認証されていない) 呼び出し元プリンシパルに付与されているかどうかを確認します。
      パラメーター:
      permissionToBeChecked - このポリシーがチェックする権限
      戻り値:
      匿名の呼び出し元プリンシパルがリクエストされたアクセス許可を持っている場合は true、それ以外の場合は false
    • implies

      default boolean implies(PermissionSE permissionToBeChecked, SetSE<PrincipalSE> principals)
      渡されるプリンシパルのセットに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。

      ポリシーは、すべてのアクセス認可を提供できない可能性がある リモート認可システムを表すことができるため、このメソッドではすべてのアクセス認可が実際に返されることを保証できません。ただし、ポリシーは、Jakarta EE アプリケーション内で宣言または設定されている少なくともすべてのアクセス認可を返す必要があります。このようなアクセス認可の例としては、アノテーションを介して、または Jakarta Servlet API を使用してプログラム的に @{web.xml}, の Jakarta Servlet セキュリティ制約式から変換されたアクセス認可が挙げられます。

      パラメーター:
      permissionToBeChecked - このポリシーがチェックする権限
      principals - (隠蔽された) 呼び出し元プリンシパルを含むコレクション
      戻り値:
      呼び出し元プリンシパルに関連付けられた権限のコレクション
    • refresh

      default void refresh()
      オプションの方法。TODO: 必要ですか?