AuthenticationSuccessHandler

AuthenticationSuccessHandler

我想为用户提供一种使用令牌登录的替代方法。我已经在PreAuthenticationFilter类中处理了对用户的身份验证,但是随后我需要触发我的

AuthenticationSuccessHandler.onAuthenticationSuccess()

哪个

super.onAuthenticationSuccess()

这会在其基类中触发该方法

SavedRequestAwareAuthenticationSuccessHandler.

如何从预身份验证过滤器中触发AuthenticationSuccessHandler?我尝试设置SecurityContextHolder的身份验证,认为它会自动触发AuthenticationSuccessHandler,但不会。这就是我试图做到的:

Authentication authentication = new UsernamePasswordAuthenticationToken(Username, Password);
SecurityContextHolder.getContext().setAuthentication(authentication);


不幸的是,那行不通。因此,我需要知道如何从预身份验证筛选器中触发AuthenticationSuccessHandler

最佳答案

您可能会启发RememberMeAuthenthicationFilter在春季安全性中的工作方式。它具有对AuthenticationSuccessHandler的引用,并手动调用onAuthenticationSuccess

10-04 09:57