LoginSignup
1
3

More than 5 years have passed since last update.

spring-securityでログイン画面でタイムアウトするとCSRFトークンが有効期限切れしてログイン失敗する

Posted at

現象と原因

現象としては、Spring Security有効環境下で、ログイン画面を開いたあと長時間放置してからログインしようとすると正しいID・パスワードでも失敗する。

これの原因は、長時間放置のタイムアウトでCSRFトークンが無効になるため。タイムアウト後のログインでセッションが再作成されて認証処理そのものは成功するが、送信されるCSRFトークンは失効したものなので、最終的にログインは失敗する。

対策

CSRFがタイムアウトする前にログインページを定期的にリフレッシュする。参考: https://stackoverflow.com/questions/27501212/csrf-token-expires-during-login

<META HTTP-EQUIV="REFRESH" CONTENT="csrf_timeout_in_seconds">

また、参考URLにこれ以外の解決策も挙げられている。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3