当用户第一次直接访问某些受限制的URL而没有登录时,spring security会重定向到登录页面。如果登录成功,则将用户重定向到请求的页面。在用户登录成功和页面重定向到请求的页面之间,如何在http会话中初始化用户特定的设置。有哪些事件可用于使用登录的用户详细信息设置会话。
编辑:
我的意图是不在会话中保存用户详细信息。取决于用户,我必须在登录后转到其他页面之前更改显示的内容。
答案 0 :(得分:2)
您不应该这样做 - 这会浪费服务器内存并影响可扩展性。摆脱在会话中存储大量不必要数据的习惯。
插件使用的Authentication
类缓存登录期间使用的User
/ Person
域类实例的ID。因此,重新加载域类实例很容易 - 只需调用def user = springSecurityService.currentUser
即可。这种方法的另一个好处是可以避免延迟加载异常以及分离的Hibernate对象的其他问题。