0

如果满足某些条件,我已将这三个类扩展为挂钩并执行不同的操作:

DefaultAuthenticationFailureHandler
DefaultAuthenticationSuccessHandler
DefaultLogoutSuccessHandler

一切都很好,它们都使用或多或少相同的代码和 services.yml 配置。

我现在需要做完全相同的事情,并挂钩到事件/类/当尝试访问安全区域中的页面时执行重定向的任何内容。

所以当他们登录尝试失败时我不需要这个(就像上面的一个那样),但是当他们访问安全区域中的页面时我需要挂钩,然后通常会重定向到登录页面(但我想拦截它并在重定向之前执行一个操作)。

理想情况下,答案是这样的:

“只需以相同的方式扩展 DefaultAuthenticationRequired 类”

...但我不认为这很容易

4

1 回答 1

0

创建一个事件并在扩展的AccessListener中调度它。

这样,您可以“挂钩”多个新类进行日志记录……无论您的访问侦听器何时检测到受保护的资源。

然后可以使用自定义容器标签注册该事件的侦听器。

阅读EventDispatcher组件的文档。

于 2013-07-10T03:13:00.257 回答