gpt4 book ai didi

Spring 安全: put additional attributes(properties) in the session on success Authentication

转载 作者:行者123 更新时间:2023-12-02 10:35:46 27 4
gpt4 key购买 nike

只是一个简单的问题:在成功身份验证时向 HttpSession 添加属性(属性)的最佳方法是什么?例如用户ID。

现在我在 UsernamePasswordAuthenticationFilter 中使用我自己的 SimpleUrlAuthenticationSuccessHandler 实现,并这样做:

public void onAuthenticationSuccess(HttpServletRequest request,
HttpServletResponse response, Authentication auth)
throws IOException, ServletException {
PersonBean person = (PersonBean) auth.getPrincipal();
request.getSession().setAttribute("currentUserId", person .getId().toString());
super.onAuthenticationSuccess(request, response, auth);

但我认为这不是一个好方法,因为还有其他方法可以进行身份​​验证(例如记住我)。

那么我需要在这里使用什么?

最佳答案

Spring论坛上给出了答案。 Link .

通常,需要实现一个 ApplicationListener 来监听成功事件并在 session 中放置其他属性。

但就我而言,不需要在 session 中存储属性。我可以像这样检索 userID:

var userId = ${pageContext.request.userPrincipal.principal.id}

关于 Spring 安全: put additional attributes(properties) in the session on success Authentication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9367354/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com