PreReq:
用户登录并获得使用 userService 的自定义实现从数据库中获取的角色。IE
身份验证提供者 user-service-ref="securityPolicyService"
实现的方法loadUserByUsername被调用,并且为他们正在登录的特定俱乐部的用户加载角色,默认一个是第一次加载的。
然后,用户从 UI 中单击不同的俱乐部,然后我调用服务上的方法来获取该俱乐部的新权限列表。
然后我执行以下操作:
Object principle = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
SecureMember sm = (SecureMember) principle;
Authentication auth =
new UsernamePasswordAuthenticationToken(sm, null, newAuthories); <br><br>
SecurityContextHolder.getContext().setAuthentication(auth);<br>
request.getSession(false).invalidate();
SecureMember 从 SpringFramework 扩展 User。
问题是 SecureMember 权限永远不会更新为新权限。
谢谢加里