我正在使用Spring 3.0和Spring Security3。我能够使用Spring Security对数据库进行身份验证。使用:

SecurityContextHolder.getContext().getAuthentication().getPrincipal()

我能够检索当前登录用户的用户名。我希望添加其他详细信息,例如用户ID和模块对存储在Spring Security上下文中的主体对象的访问,以便以后可以检索它。如何将其他详细信息添加到主体对象,然后稍后如何在jsp或java类上检索它。如果可能,请提供适当的代码段。

编辑:我正在使用JDBC访问我的数据库。

提前致谢。

最佳答案

为了将更多详细信息添加到已验证的用户。您需要首先创建自己的User对象实现,该实现应该扩展spring安全性User对象。之后,您可以将要添加的属性添加到已验证的用户。完成此操作后,您需要在UserDetailService中返回用户对象的实现(如果您未使用LDAP进行身份验证)。此链接提供了用于向经过身份验证的用户添加更多详细信息的详细信息-
http://javahotpot.blogspot.com/2013/12/spring-security-adding-more-information.html

07-25 23:47
查看更多