インターフェース RunAsManager
- すべての既知の実装クラス:
RunAsManagerImpl
Authentication
オブジェクトを作成します。 このインターフェースにより、実装は、現在のセキュアオブジェクト呼び出しにのみ適用される Authentication
オブジェクトを置き換えることができます。AbstractSecurityInterceptor
は、SecurityContext
に保持されている Authentication
オブジェクトを、セキュアオブジェクトコールバック間のみ置き換え、コールバックが終了すると元の Authentication
オブジェクトに返します。
これは、オブジェクトの 2 つの層を持つシステムを確立できるようにするために提供されています。1 つの層は一般公開されており、通常の安全な方法があり、許可されたオーソリティは外部の呼び出し元によって保持されることが期待されています。もう一方のレイヤーはプライベートであり、パブリックレイヤー内のオブジェクトによってのみ呼び出されることが想定されています。このプライベートレイヤーのオブジェクトにはセキュリティが必要です(そうでない場合は public メソッドになります)。また、外部の呼び出し元から直接呼び出されないようにするためのセキュリティも必要です。プライベート層のオブジェクトは、外部の呼び出し元に決して付与されない付与された権限を要求するように構成されます。RunAsManager
インターフェースは、この方法でセキュリティを向上させるメカニズムを提供します。
実装は対応する具体的な Authentication
および AuthenticationProvider
を提供するため、置換 Authentication
オブジェクトを認証できます。AuthenticationProvider
が RunAsManager
の承認された具体的な実装によって作成された Authentication
オブジェクトのみを受け入れるようにするには、何らかのセキュリティを実装する必要があります。
メソッドのサマリー
修飾子と型メソッド説明buildRunAs
(Authentication authentication, ObjectSE object, CollectionSE<ConfigAttribute> attributes) 使用すべきではありません。現在のセキュアオブジェクト呼び出しの置換Authentication
オブジェクト、または置換が不要な場合はnull
を返します。boolean
使用すべきではありません。RunAsManager
実装が、示されたセキュアオブジェクト型の代替として実行を提供できるかどうかを示します。boolean
supports
(ConfigAttribute attribute) 使用すべきではありません。このRunAsManager
が、渡されたConfigAttribute
を処理できるかどうかを示します。
メソッドの詳細
buildRunAs
Authentication buildRunAs(Authentication authentication, ObjectSE object, CollectionSE<ConfigAttribute> attributes) 使用すべきではありません。現在のセキュアオブジェクト呼び出しの置換Authentication
オブジェクト、または置換が不要な場合はnull
を返します。- パラメーター:
authentication
- 安全なオブジェクトを呼び出す呼び出し元object
- 呼び出されている保護されたオブジェクトattributes
- 呼び出されるセキュアオブジェクトに関連付けられた構成属性- 戻り値:
- セキュアオブジェクト呼び出しの期間中に使用される置換オブジェクト、または
Authentication
をそのままにしておく必要がある場合はnull
supports
使用すべきではありません。このRunAsManager
が、渡されたConfigAttribute
を処理できるかどうかを示します。これにより、
AbstractSecurityInterceptor
は、構成されたAccessDecisionManager
および / またはRunAsManager
および / またはAfterInvocationManager
が消費できるすべての構成属性をチェックできます。- パラメーター:
attribute
-AbstractSecurityInterceptor
に対して構成された構成属性- 戻り値:
- この
RunAsManager
が渡された構成属性をサポートできる場合はtrue
supports
使用すべきではありません。RunAsManager
実装が、示されたセキュアオブジェクト型の代替として実行を提供できるかどうかを示します。- パラメーター:
clazz
- 照会されているクラス- 戻り値:
- 実装が指定されたクラスを処理できる場合は true