JPA实体实现SpringSecurityUserDetails的含义是什么?
我有一个名为JPA实体实现SpringSecurityUserDetails的含义是什么?,spring,jpa,spring-security,spring-data-jpa,Spring,Jpa,Spring Security,Spring Data Jpa,我有一个名为Member的JPA实体。我希望此实体实现Spring安全UserDetails并实现基于JPA的自定义UserService 在这样做之前,我有几个问题需要解决: 成员实体具有许多属性。Member现在实现了UserDetails,并因此存储到HttpSession中(请参见HttpSessionSecurityContextRepository)这一事实是否会显著影响会话使用情况 我是否可以通过调用来检索当前登录的成员:SecurityContextHolder.getCont
Member
的JPA实体。我希望此实体实现Spring安全UserDetails
并实现基于JPA的自定义UserService
在这样做之前,我有几个问题需要解决:
实体具有许多属性。成员
现在实现了Member
,并因此存储到HttpSession中(请参见UserDetails
)这一事实是否会显著影响会话使用情况HttpSessionSecurityContextRepository
- 我是否可以通过调用来检索当前登录的
成员
和希望其所有属性在其他地方更新时保持正确同步:SecurityContextHolder.getContext().getAuthentication().getPrincipal()
Member member = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
member.setYourField(yourValue); //
谢谢你的意见。嗯,对于一个大型应用来说,这是不可行的。没有更简单的方法吗?@balteo没有,主体在登录时被添加到上下文中,之后的任何更改都必须自行完成
expect all its properties to remain synchronized properly when they are updated elsewhere?
Member member = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
member.setYourField(yourValue); //