クラス SecurityContextLogoutHandler

java.lang.ObjectSE
org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler
実装されたすべてのインターフェース:
LogoutHandler

public class SecurityContextLogoutHandler extends ObjectSE implements LogoutHandler
SecurityContextHolder を変更してログアウトを実行します。

isInvalidateHttpSession() が true であり、セッションが null でない場合も、HttpSession を無効にします。

また、clearAuthentication が true (デフォルト) に設定されている場合、現在の SecurityContext から Authentication を削除します。

  • フィールドの詳細

    • logger

      protected final org.apache.commons.logging.Log logger
  • コンストラクターの詳細

    • SecurityContextLogoutHandler

      public SecurityContextLogoutHandler()
  • メソッドの詳細

    • logout

      public void logout(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, Authentication authentication)
      リクエストを渡す必要があります。
      次で指定:
      インターフェース LogoutHandlerlogout 
      パラメーター:
      request - HTTP セッションを取得する場所 (null にできません)
      response - 未使用 (null にすることができます)
      authentication - 未使用 (null にすることができます)
    • isInvalidateHttpSession

      public boolean isInvalidateHttpSession()
    • setSecurityContextHolderStrategy

      public void setSecurityContextHolderStrategy(SecurityContextHolderStrategy securityContextHolderStrategy)
      使用する SecurityContextHolderStrategy を設定します。デフォルトのアクションは、SecurityContextHolder に格納されている SecurityContextHolderStrategy を使用することです。
      導入:
      5.8
    • setInvalidateHttpSession

      public void setInvalidateHttpSession(boolean invalidateHttpSession)
      この LogoutHandler が呼び出されると、HttpSession が無効になります。デフォルトは true です。
      パラメーター:
      invalidateHttpSession - セッションを無効にする場合は true(デフォルト)、無効にしない場合は false。
    • setClearAuthentication

      public void setClearAuthentication(boolean clearAuthentication)
      true の場合、同時リクエストの課題を防ぐために SecurityContext から Authentication を削除します。
      パラメーター:
      clearAuthentication - SecurityContext から Authentication をクリアする場合は true(デフォルト)、Authentication を削除しない場合は false。
    • setSecurityContextRepository

      public void setSecurityContextRepository(SecurityContextRepository securityContextRepository)
      使用する SecurityContextRepository を設定します。デフォルトは HttpSessionSecurityContextRepository です。
      パラメーター:
      securityContextRepository - 使用する SecurityContextRepository