游戏中的无状态操作模式!据说框架比有状态模式更不安全。一般来说,它对Play框架有何影响?是否有可能改善关键公共web应用程序的安全缺陷?
发布于 2011-09-11 04:11:10
首先,你说无状态是不安全的?你有什么特别的理由让你相信是这样的吗?
无状态模型的思想是,您不会在服务器端不必要地将数据存储在会话中,这会导致您必须在会话持续时间内在同一服务器上继续“会话聊天”。
如果您想要模拟J2EE会话,那么您可以简单地使用session.id并将所有状态存储在数据库中,并在会话结束时删除。
会话cookie本身是经过签名的,因此它不能被篡改,因此不必担心有人会劫持会话id,但是如果您特别担心,那么您可以简单地将您自己的标识符存储在会话cookie中,并使用Crypto实用程序类对其进行加密,该实用程序类使用应用程序的密钥来加密/解密数据。
无状态只是一种思维方式的改变,只要你不在会话中存储不必要的数据(这可能就是你所在的地方),那么你就没有什么可担心的了。
发布于 2011-10-12 01:46:40
这并不是说play的无状态模型不太安全,只是因为没有像样的Java Security库可以与Spring Security之类的库相媲美。
目前可用的安全模块非常基础,并且没有提供Spring Security的三分之一的功能。
除非开发出可与Spring Security相抗衡的安全模块,否则play将无法在企业应用程序世界中占有一席之地。目前,对于一个简单的博客应用程序来说,这是很好的。
遗憾的是,Spring Security依赖于Spring和servlet API。
https://stackoverflow.com/questions/7373354
复制相似问题