上下文:Web应用程序 - Java,Spring MVC,Spring Security
对我来说不透明的是存储什么信息/如何在Web应用程序中执行某些操作(不要考虑当然的密码),例如我可以:
假设我的db表总是将int id作为主键。登录名只是唯一的。请不要局限于我的3种方法,这些都是非常简单的例子,我说的是数据存储/持久化(请不要将ORM与此上下文中的这个词相关联),这是db请求的组合,用于Web应用程序中服务器端的DTO。
我认为我在会话中(或跨请求)存储的详细信息越多,我就越容易管理它,加上对数据库的请求减少。如果我以不识别特定用户的形式保留这些细节,那么应该没有问题吗?例如,如果我存储“id = 5; fruit_id [] = 1,4,7;(抱歉,如果语法错误)在会话中说”,它是否真的无法识别安全性是否被破坏?
答案 0 :(得分:1)
您的问题有点模糊,只能根据具体细节正确回答。但是,通常可以在会话中存储用户详细信息,包括用户ID。可能是一个User对象,它反映了db的用户表中的任何字段/详细信息。存储身份验证级别或角色也是可以的。当然,您不应该在会话中存储太多的数据。