我听说有些人认为在 session 中将信息存储在服务器上是一个坏主意,因为它不安全。
因此,在多页业务流程功能中,应用程序将数据写入数据库,然后在需要时检索信息。
在 session 中存储私有(private)信息是否必然不安全?
最佳答案
在 session 中存储属性没有安全风险,只要 session 本身不受 hijacking 的影响。
有一些严重的问题涉及并发和 session 。由于多个线程同时为单个 session 发出请求非常常见,因此您必须确保存储在 Session 中的对象是线程安全的。要么使它们不可变,要么使用同步等内存屏障使它们线程安全。我强烈推荐 article on the subject by Brian Goetz 。