インターフェース 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実装が、示されたセキュアオブジェクト型の代替として実行を提供できるかどうかを示します。booleansupports(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