[Grails] Spring Security Core でイベントをハンドルする

最初にどのようなイベントがあるか確認する

grails-spring-security-core
にある、

src/java/grails/plugin/springsecurity/SecurityEventListener.java

の、

にブレークポイントをはる。

そして、
Config.groovy に以下を追加

これで、デバッグで起動してればログイン・ログアウト周りでのイベントを捕捉できる。

イベントのリスナを作る

イベントのリスナを作るには、

ApplicationListener をインプリメントしたクラスを作りリッスンしたいイベントの型を指定する

今回は認証失敗時の処理をハンドルしたいので、AuthorizationFailureEvent を指定する
こんな感じ

さいごに、resources.groovy に追加する