我正在学习Spring Boot并创建一个基于Web的简单项目,其中使用Spring安全性的“记住我”功能创建了一个cookie,但不知道如何使用该cookie来提取会话信息。
例如在页面上显示此内容-“ hello {user}”,用户在页面之间传递。 {user}值应与其他信息一起来自cookie。
我们可以这样走吗?如果是,如何从Cookie中提取用户信息,或者是否有其他方法可以实现特定功能?
我试图对此进行搜索,但找不到具体的解决方案。
这是代码的一部分。
public function broadcastAs()
{
return 'server.created';
}
答案 0 :(得分:0)
RememberMeAuthenticationFilter
内的所有这些工作已经为您解决了
该过滤器被插入,并执行以下操作
Authentication rememberMeAuth =
rememberMeServices.autoLogin(request, response);
rememberMeAuth = authenticationManager.authenticate(rememberMeAuth);
SecurityContextHolder.getContext().setAuthentication(rememberMeAuth);
onSuccessfulAuthentication(request, response, rememberMeAuth);
eventPublisher.publishEvent(new InteractiveAuthenticationSuccessEvent(...));
successHandler.onAuthenticationSuccess(request, response,
rememberMeAuth);
如果您想拦截此事件链,请在AuthenticationManager
中进行。步骤2,Spring将把信息传递给您。