public interface SecurityContextRepositorySecurityContext を永続化するために使用される戦略。SecurityContextPersistenceFilter によって使用され、現在の実行スレッドに使用する必要があるコンテキストを取得し、スレッドローカルストレージから削除されてリクエストが完了したときにコンテキストを格納します。
使用される永続化メカニズムは実装によって異なりますが、最も一般的には HttpSession がコンテキストの格納に使用されます。
| 修飾子と型 | メソッドと説明 |
|---|---|
boolean | containsContext(javax.servlet.http.HttpServletRequest request) リポジトリに現在のリクエストのセキュリティコンテキストが含まれているかどうかを問い合わせることができます。 |
SecurityContext | loadContext(HttpRequestResponseHolder requestResponseHolder) 指定されたリクエストのセキュリティコンテキストを取得します。 |
void | saveContext(SecurityContext context, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) リクエストの完了時にセキュリティコンテキストを格納します。 |
SecurityContext loadContext(HttpRequestResponseHolder requestResponseHolder)
HttpRequestResponseHolder パラメーターを使用すると、実装はリクエストまたはレスポンス (あるいはその両方) のラップされたバージョンを返すことができ、リクエストの実装固有の状態にアクセスできるようになります。ホルダーから取得された値は、フィルターチェーンに渡され、最後に呼び出されたときに saveContext メソッドにも渡されます。実装は、レスポンスオブジェクトとして SaveContextOnUpdateOrErrorResponseWrapper のサブクラスを返すことを希望する場合があります。これにより、エラーまたはリダイレクトが発生したときにコンテキストが保持されることが保証されます。
requestResponseHolder - コンテキストをロードする必要がある現在のリクエストとレスポンスのホルダー。void saveContext(SecurityContext context, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
context - ホルダーから取得された null 以外のコンテキスト。request -response -boolean containsContext(javax.servlet.http.HttpServletRequest request)
request - 現在のリクエスト