spring自定义注销filter在注销前执行一些操作?

我正在使用Spring Security 3.0。 我只需要在用户注销之前执行一些逻辑。

是否可以通过重写Spring Security的LogoutFilter类来实现这一LogoutFilter

有很多方法可以做到这一点。 我会告诉你我会考虑的两个。

1)创建我自己的filter,完成我需要的东西。 这里的关键点是,如果你创建了一个filter,你还必须告诉Spring Security将它放入“filter链”,你的请求filter链是为了做auth *的东西。 请查看此文档以了解如何在更多详细信息中将filter插入正确的位置,但它看起来像

     

请记住,通过对LogoutFilter进行子类化,您仍然可以创建自定义filter,因此同样适用。

2)如果我的自定义逻辑可以在用户注销之前没有严格执行,但也可以稍微执行,请考虑使用SecurityContextLogoutHandler (请参阅B.1.13节中的文档),这将为您提供一个钩点,以便在用户成功注销时执行自定义逻辑。