クラス AbstractSessionFixationProtectionStrategy
- java.lang.Object
-
- org.springframework.security.web.authentication.session.AbstractSessionFixationProtectionStrategy
- 実装されているすべてのインターフェース:
org.springframework.beans.factory.Aware、org.springframework.context.ApplicationEventPublisherAware、SessionAuthenticationStrategy
public abstract class AbstractSessionFixationProtectionStrategy extends java.lang.Object implements SessionAuthenticationStrategy, org.springframework.context.ApplicationEventPublisherAware
セッション固定保護を実行するための基本クラス。- 導入:
- 3.2
ネストされたクラスの要約
ネストされたクラス 修飾子と型 クラス 説明 protected static classAbstractSessionFixationProtectionStrategy.NullEventPublisher
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 protected org.apache.commons.logging.Loglogger
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 voidonAuthentication(Authentication authentication, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)ユーザーが新しく認証されたときに呼び出されます。protected voidonSessionChange(java.lang.String originalSessionId, javax.servlet.http.HttpSession newSession, Authentication auth)セッションが変更され、古い属性が新しいセッションに移行されたときに呼び出されます。voidsetAlwaysCreateSession(boolean alwaysCreateSession)voidsetApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)SessionFixationProtectionEventの送信に使用するApplicationEventPublisherを設定します。
メソッドの詳細
onAuthentication
public void onAuthentication(Authentication authentication, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
ユーザーが新しく認証されたときに呼び出されます。セッションがすでに存在し、クライアントからのセッション ID と一致する場合、新しいセッションが作成され、セッション属性がそこにコピーされます(
migrateSessionAttributesが設定されている場合)。クライアントのリクエストされたセッション ID が無効な場合、現在のセッションと一致しない場合はセッション ID を変更する必要がないため、何も実行されません。セッションがない場合、
alwaysCreateSessionプロパティが設定されていない限り、アクションは実行されません。その場合、セッションが存在しない場合はセッションが作成されます。- 次で指定:
- インターフェース
SessionAuthenticationStrategyのonAuthentication
onSessionChange
protected void onSessionChange(java.lang.String originalSessionId, javax.servlet.http.HttpSession newSession, Authentication auth)セッションが変更され、古い属性が新しいセッションに移行されたときに呼び出されます。開始するセッションが存在する場合にのみ呼び出されます。サブクラスが追加の動作をプラグインできるようにします。*このメソッドのデフォルト実装は、セッション ID が変更されたことをアプリケーションに通知するために
SessionFixationProtectionEventを公開します。このメソッドをオーバーライドしても、これらのイベントを公開したい場合は、オーバーライドメソッド内でsuper.onSessionChange()を呼び出す必要があります。- パラメーター:
originalSessionId- 元のセッション識別子newSession- 新しく作成されたセッションauth- 新しく認証されたプリンシパルのトークン
setApplicationEventPublisher
public void setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)
SessionFixationProtectionEventの送信に使用するApplicationEventPublisherを設定します。デフォルトでは、SessionFixationProtectionEventは送信されません。- 次で指定:
- インターフェース
org.springframework.context.ApplicationEventPublisherAwareのsetApplicationEventPublisher - パラメーター:
applicationEventPublisher-ApplicationEventPublishernull にはできません。
setAlwaysCreateSession
public void setAlwaysCreateSession(boolean alwaysCreateSession)