クラス LogoutConfigurer<H extends HttpSecurityBuilder<H>>
java.lang.ObjectSE
org.springframework.security.config.annotation.SecurityConfigurerAdapter<DefaultSecurityFilterChain, H>
org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer<LogoutConfigurer<H>, H>
org.springframework.security.config.annotation.web.configurers.LogoutConfigurer<H>
- 実装済みのインターフェース一覧:
SecurityConfigurer<DefaultSecurityFilterChain, H>
public final class LogoutConfigurer<H extends HttpSecurityBuilder<H>>
extends AbstractHttpConfigurer<LogoutConfigurer<H>, H>
ログアウトのサポートを追加します。他の
SecurityConfigurer インスタンスは、SecurityConfigurer.init(org.springframework.security.config.annotation.SecurityBuilder) フェーズで addLogoutHandler(LogoutHandler) を呼び出すことができます。セキュリティフィルター
次のフィルターが読み込まれます作成された共有オブジェクト
共有オブジェクトは作成されません使用される共有オブジェクト
共有オブジェクトは使用されません。- 導入:
- 3.2
- 関連事項:
コンストラクター概要
コンストラクター方法の概要
修飾子と型メソッド説明addLogoutHandler(LogoutHandler logoutHandler) LogoutHandlerを追加します。clearAuthentication(boolean clearAuthentication) SecurityContextLogoutHandlerがログアウト時にAuthenticationをクリアするかどうかを指定します。voidSecurityBuilderに必要なプロパティを設定して、SecurityBuilderを構成します。defaultLogoutSuccessHandlerFor(LogoutSuccessHandler handler, RequestMatcher preferredMatcher) 指定されたRequestMatcherに対して呼び出されることを優先するデフォルトのLogoutSuccessHandlerを使用するように設定します。deleteCookies(StringSE... cookieNamesToClear) ログアウトの成功時に削除する Cookie の名前を指定できます。使用されるLogoutHandlerインスタンスを取得します。null でない場合はLogoutSuccessHandlerを取得し、そうでない場合はlogoutSuccessUrl(String)を使用して新しいSimpleUrlLogoutSuccessHandlerを作成します。voidSecurityBuilderを初期化します。invalidateHttpSession(boolean invalidateHttpSession) SecurityContextLogoutHandlerを構成して、ログアウト時にHttpSessionを無効にします。logoutRequestMatcher(RequestMatcher logoutRequestMatcher) ログアウトをトリガーする RequestMatcher。logoutSuccessHandler(LogoutSuccessHandler logoutSuccessHandler) 使用するLogoutSuccessHandlerを設定します。logoutSuccessUrl(StringSE logoutSuccessUrl) ログアウト後にリダイレクトする URL。ログアウトをトリガーする URL(デフォルトは "/logout")。trueを引数として使用するpermitAll(boolean)のショートカット。permitAll(boolean permitAll) すべてのユーザーにlogoutSuccessUrl(String)およびlogoutUrl(String)へのアクセスを許可します。クラス AbstractHttpConfigurer から継承されたメソッド
disable, getRequestMatcherBuilder, getSecurityContextHolderStrategy, withObjectPostProcessorクラス SecurityConfigurerAdapter から継承されたメソッド
addObjectPostProcessor, getBuilder, postProcess, setBuilder
コンストラクターの詳細
LogoutConfigurer
public LogoutConfigurer()新しいインスタンスを作成します- 関連事項:
方法の詳細
addLogoutHandler
LogoutHandlerを追加します。SecurityContextLogoutHandlerおよびLogoutSuccessEventPublishingLogoutHandlerは、デフォルトで最後のLogoutHandlerインスタンスとして追加されます。- パラメーター:
logoutHandler- 追加するLogoutHandler- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
clearAuthentication
SecurityContextLogoutHandlerがログアウト時にAuthenticationをクリアするかどうかを指定します。- パラメーター:
clearAuthentication- trueSecurityContextLogoutHandlerはAuthentication(デフォルト)をクリアする必要があり、そうでない場合は false です。- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
invalidateHttpSession
SecurityContextLogoutHandlerを構成して、ログアウト時にHttpSessionを無効にします。- パラメーター:
invalidateHttpSession-HttpSessionを無効にする必要がある場合は true(デフォルト)、そうでない場合は false。- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
logoutUrl
ログアウトをトリガーする URL(デフォルトは "/logout")。CSRF 保護が有効になっている場合(デフォルト)、リクエストも POST である必要があります。これは、デフォルトでログアウトをトリガーするために POST "/logout" が必要であることを意味します。CSRF 保護が無効になっている場合、任意の HTTP メソッドが許可されます。CSRF 攻撃から保護するために、状態を変更する(ログアウトする)アクションで HTTP POST を使用することをお勧めします。本当に HTTP GET を使用したい場合は、
logoutRequestMatcher(PathPatternRequestMatcher.pathPattern(HttpMethod.GEt, logoutUrl));を使用できます- パラメーター:
logoutUrl- ログアウトを呼び出す URL。- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer - 関連事項:
logoutRequestMatcher
ログアウトをトリガーする RequestMatcher。ほとんどの場合、ユーザーはlogoutUrl(String)を使用します。これは、優れたプラクティスの実施に役立ちます。- パラメーター:
logoutRequestMatcher- ログアウトが発生するかどうかを判断するために使用される RequestMatcher- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer - 関連事項:
logoutSuccessUrl
ログアウトが発生した後にリダイレクトする URL。デフォルトは "/login?logout" です。これは、SimpleUrlLogoutSuccessHandlerを使用してlogoutSuccessHandler(LogoutSuccessHandler)を呼び出すためのショートカットです。- パラメーター:
logoutSuccessUrl- ログアウト後にリダイレクトする URL- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
permitAll
trueを引数として使用するpermitAll(boolean)のショートカット。- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
deleteCookies
ログアウトの成功時に削除する Cookie の名前を指定できます。これは、addLogoutHandler(LogoutHandler)をCookieClearingLogoutHandlerで簡単に呼び出すためのショートカットです。- パラメーター:
cookieNamesToClear- ログアウトの成功時に削除される Cookie の名前。- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
logoutSuccessHandler
使用するLogoutSuccessHandlerを設定します。これが指定されている場合、logoutSuccessUrl(String)は無視されます。- パラメーター:
logoutSuccessHandler- ユーザーがログアウトした後に使用するLogoutSuccessHandler- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
defaultLogoutSuccessHandlerFor
public LogoutConfigurer<H> defaultLogoutSuccessHandlerFor(LogoutSuccessHandler handler, RequestMatcher preferredMatcher) 指定されたRequestMatcherに対して呼び出されることを優先するデフォルトのLogoutSuccessHandlerを使用するように設定します。LogoutSuccessHandlerが指定されていない場合、SimpleUrlLogoutSuccessHandlerが使用されます。デフォルトのLogoutSuccessHandlerインスタンスが構成されている場合、デフォルトでSimpleUrlLogoutSuccessHandlerになるDelegatingLogoutSuccessHandlerが使用されます。- パラメーター:
handler- 使用するLogoutSuccessHandlerpreferredMatcher- このデフォルトLogoutSuccessHandlerのRequestMatcher- 戻り値:
- さらにカスタマイズするための
LogoutConfigurer
permitAll
すべてのユーザーにlogoutSuccessUrl(String)およびlogoutUrl(String)へのアクセスを許可します。- パラメーター:
permitAll- true がアクセスを許可する場合、何も実行されません- 戻り値:
LogoutConfigurerをさらにカスタマイズします。
getLogoutSuccessHandler
null でない場合はLogoutSuccessHandlerを取得し、そうでない場合はlogoutSuccessUrl(String)を使用して新しいSimpleUrlLogoutSuccessHandlerを作成します。- 戻り値:
- 使用する
LogoutSuccessHandler
init
インターフェースからコピーされた説明:SecurityConfigurerSecurityBuilderを初期化します。ここでは、共有状態のみを作成および変更する必要がありますが、オブジェクトの構築に使用されるSecurityBuilderのプロパティは作成および変更しないでください。これにより、構築時にSecurityConfigurer.configure(SecurityBuilder)メソッドが正しい共有オブジェクトを使用するようになります。ここで設定を適用する必要があります。- 次で指定:
- インターフェース
SecurityConfigurer<DefaultSecurityFilterChain, H extends HttpSecurityBuilder<H>>内のinit - オーバーライド:
- クラス
SecurityConfigurerAdapter<DefaultSecurityFilterChain, H extends HttpSecurityBuilder<H>>のinit - パラメーター:
http-
configure
インターフェースからコピーされた説明:SecurityConfigurerSecurityBuilderに必要なプロパティを設定して、SecurityBuilderを構成します。- 次で指定:
- インターフェース
SecurityConfigurer<DefaultSecurityFilterChain, H extends HttpSecurityBuilder<H>>内のconfigure - オーバーライド:
- クラス
SecurityConfigurerAdapter<DefaultSecurityFilterChain, H extends HttpSecurityBuilder<H>>のconfigure - パラメーター:
http-
getLogoutHandlers
使用されるLogoutHandlerインスタンスを取得します。- 戻り値:
LogoutHandlerインスタンス。null にすることはできません。