例えば以下の順序でアクセスする。
- 未ログイン時に、Spring Securityのアクセス制限のあるページにダイレクトアクセス
- ログイン画面に戻される
- 正しいログイン情報でログインしたらエラー
この時、内部では最初にアクセスしようとしたURLにリダイレクトして、そこのコントローラやサービスやらviewで処理失敗している
原因
Spring Security の設定で許可されていないアクションにアクセスした際にはログイン画面に戻る。そしてログインに成功するとトライした画面に戻るようになっている。
ログイン後の画面は以下のように設定されているはず。
Config.groovy
1 |
grails.plugins.springsecurity.successHandler.defaultTargetUrl = '/index' |
常に、ログイン時は上記の設定を使うように強制する。
Config.groovy
1 |
grails.plugins.springsecurity.successHandler.alwaysUseDefault = true |
トライした画面に戻るのは、凄く親切な機能だが。
「【Grails (グレイルズ) 】 Spring Security Plugin。 アクセス失敗後の認証でエラーが発生する」への1件のフィードバック