AccessDeniedException を処理するサービスを作成していますが、Symfony2 の AccessDeniedHandlerInterface を使用して解決する方法を見つけました。
firewalls:
secured_area:
.....
access_denied_handler: kernel.listener.accessDenied.handler
ここでサービスを定義します。
services:
kernel.listener.accessDenied.handler:
class: %kernel.listener.accessDenied.handler.class%
arguments: ["@service_container"]
tags:
- { name: 'kernel.event_listener', event: 'security.kernel_response', method: 'handle' }
しかし、たとえばevent: 'security.kernel_response'など、これらの属性の定義がどこにあるのかわかりません。「security.kernel_response」はどこで定義されていますか? また、他のイベントのリストはどこで取得できますか?
また、「access_denied_handler」などの他のハンドラーについては、対応するサービスのタグをどのように判断できますか?