はじめに Spring Boot + Spring Security使用時のSessionTimeout対応の最後に、「CSRF対策が有効の場合、POST時にSessionTimeoutしているとHTTP Status:403 Forbiddenが発生してしまう問題がある。」と記載した。 今回はこの問題の対応方法を記載し、Spring SecurityのJavaConfigの完成形を作る。 CSRF対策のせいでHTTP Status:403 Forbiddenが起こる原因 まずこの問題が起こる原因は、CSRF対策の仕組みが、リクエストパラメータで送られるCSRF TokenとSessionに保存されたCSRF Tokenを比較するというロジックであり、Sessionに依存しているから。 SessionがTimeoutによって消滅しているときにCSRF Tokenをリクエストパラメータで送っ