インターフェース Policy
ポリシーは、呼び出し元プリンシパルのホルダーとして SubjectSE を使用します。サブジェクトは「プリンシパルのバッグ」であるため、潜在的に多くのプリンシパルのうちどれが呼び出し元プリンシパルを表すかを指定しません。低レベルのアーティファクト (セキュリティシステムとの Jakarta EE ランタイム相互作用を目的としたもの) として、これにより、ランタイム固有の動作と最適化が可能になります。
ポリシーは通常、特定のポリシーコンテキストに対して PolicyConfiguration インスタンスが保持する Permission インスタンスを使用しますが、必ずではありません。Jakarta EE Servlet 環境では、これらには、アノテーションを介して web.xml の XML で表現されるか、Jakarta Servlet API を使用してプログラムで設定される、変換されたセキュリティ制約が含まれます。
- 作成者:
- Arjan Tijms
方法の概要
修飾子と型メソッド説明getPermissionCollection(SubjectSE subject) @{subject} パラメーターに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。default booleanimplies(PermissionSE permissionToBeChecked) このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が匿名 (認証されていない) 呼び出し元プリンシパルに付与されているかどうかを確認します。default booleanimplies(PermissionSE permissionToBeChecked, SetSE<PrincipalSE> principals) 渡されるプリンシパルのセットに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。default booleanimplies(PermissionSE permissionToBeChecked, SubjectSE subject) このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が @{subject} パラメーター内の呼び出し元プリンシパルに付与されているかどうかを確認します。default booleanimpliesByRole(PermissionSE permissionToBeChecked, SubjectSE subject) このメソッドは、呼び出し元プリンシパルに関連付けられた 1 つ以上のロールに基づいて、@{permissionToBeChecked} パラメーターによって表されるアクセス許可が、@{subject} パラメーター内で呼び出し元プリンシパルに付与されているかどうかを確認します。default booleanisExcluded(PermissionSE permissionToBeChecked) このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによって除外されているかどうかを確認します。default booleanisUnchecked(PermissionSE permissionToBeChecked) このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによってチェックされていないかどうかを確認します。default voidrefresh()オプションの方法。TODO: 必要ですか?
方法の詳細
implies
このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が @{subject} パラメーター内の呼び出し元プリンシパルに付与されているかどうかを確認します。- パラメーター:
permissionToBeChecked- このポリシーがチェックする権限subject- (隠蔽された) 呼び出し元プリンシパルの保持者- 戻り値:
- 呼び出し元プリンシパルがリクエストされたアクセス許可を持っている場合は true、それ以外の場合は false
isExcluded
このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによって除外されているかどうかを確認します。除外されているということは、権限がどの呼び出し元にも付与されていないことを意味します。- パラメーター:
permissionToBeChecked- このポリシーがチェックする権限- 戻り値:
- リクエストされた権限が除外されている場合は true、そうでない場合は false
isUnchecked
このメソッドは、@{permissionToBeChecked} パラメーターによって表される権限がこのポリシーによってチェックされていないかどうかを確認します。チェックされていないということは、認証されているかどうかに関係なく、すべての呼び出し元に権限が付与されることを意味します。- パラメーター:
permissionToBeChecked- このポリシーがチェックする権限- 戻り値:
- リクエストされた権限がチェックされていない場合は true、そうでない場合は false
impliesByRole
このメソッドは、呼び出し元プリンシパルに関連付けられた 1 つ以上のロールに基づいて、@{permissionToBeChecked} パラメーターによって表されるアクセス許可が、@{subject} パラメーター内で呼び出し元プリンシパルに付与されているかどうかを確認します。- パラメーター:
permissionToBeChecked- このポリシーがチェックする権限subject- (隠蔽された) 呼び出し元プリンシパルの保持者- 戻り値:
- 呼び出し元プリンシパルがリクエストされたアクセス許可を持っている場合は true、それ以外の場合は false
getPermissionCollection
@{subject} パラメーターに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。ポリシーは、すべてのアクセス認可を提供できない可能性がある リモート認可システムを表すことができるため、このメソッドではすべてのアクセス認可が実際に返されることを保証できません。ただし、ポリシーは、Jakarta EE アプリケーション内で宣言または設定されている少なくともすべてのアクセス認可を返す必要があります。このようなアクセス認可の例としては、アノテーションを介して、または Jakarta Servlet API を使用してプログラム的に @{web.xml}, の Jakarta Servlet セキュリティ制約式から変換されたアクセス認可が挙げられます。
- パラメーター:
subject- (隠蔽された) 呼び出し元プリンシパルの保持者- 戻り値:
- 呼び出し元プリンシパルに関連付けられた権限のコレクション
implies
このメソッドは、@{permissionToBeChecked} パラメーターで表されるアクセス許可が匿名 (認証されていない) 呼び出し元プリンシパルに付与されているかどうかを確認します。- パラメーター:
permissionToBeChecked- このポリシーがチェックする権限- 戻り値:
- 匿名の呼び出し元プリンシパルがリクエストされたアクセス許可を持っている場合は true、それ以外の場合は false
implies
渡されるプリンシパルのセットに含まれる呼び出し元プリンシパルに関連付けられている少なくともすべての宣言されたアクセス許可のコレクションを返します。ポリシーは、すべてのアクセス認可を提供できない可能性がある リモート認可システムを表すことができるため、このメソッドではすべてのアクセス認可が実際に返されることを保証できません。ただし、ポリシーは、Jakarta EE アプリケーション内で宣言または設定されている少なくともすべてのアクセス認可を返す必要があります。このようなアクセス認可の例としては、アノテーションを介して、または Jakarta Servlet API を使用してプログラム的に @{web.xml}, の Jakarta Servlet セキュリティ制約式から変換されたアクセス認可が挙げられます。
- パラメーター:
permissionToBeChecked- このポリシーがチェックする権限principals- (隠蔽された) 呼び出し元プリンシパルを含むコレクション- 戻り値:
- 呼び出し元プリンシパルに関連付けられた権限のコレクション
refresh
default void refresh()オプションの方法。TODO: 必要ですか?