【发布时间】:2014-04-15 17:18:02
【问题描述】:
我目前使用 Oracle ADF(一个端到端 Java EE 框架)来构建我的 Web 应用程序,并将 GlassFish 3.1 作为应用程序服务器。
后者支持JAAS(在其管理控制台中声明)。因此,我创建了一个安全领域并将它们映射到配置文件中声明的角色,并使用 JAAS 来实现授权和身份验证安全功能。 一切都很好,直到现在!过去几周我一直在研究 Java EE 安全性。
我发现,如果您坚持 "basic" 安全性,JAAS 就足够了。此外,似乎 JAAS(作为 Java 安全框架的一部分)仅适用于 Java SE(但由于 Java EE 是基于 Java SE 构建的,因此它的一些模块正在被重用,例如 LoginMethod 和 Callbacks)。
然后,我找到了很多关于JASPIC的帖子,发现它只能通过编程方式实现(不是问题)并且尚未得到应用服务器供应商的完全支持,并尝试制作@ 987654323@ 两者之间。即使JASPIC1.1 release 已经解决了一些问题,比如:
但容器不会完全记住身份验证。这 SAM 仍然在每次请求时被调用,并且 SAM 仍然必须 重新认证
(对我来说听起来不太好)。
然后,我继续寻找integrating some security framework。最著名的似乎是 "Spring" 和 "Shiro"。当然,他们每个人都有自己的特点(可能第一个更适合特定情况,而第二个更适合另一种情况)。对我来说更重要的是:
- 身份验证
- 授权
- 会话管理(可能还有加密)
但是,我到处都发现了相互矛盾的结论。结果:我现在比搜索之前更困惑。
我只是安全等主题的新手,而且我是一名开发人员(我有一些东西要实现),所以很难跟上每个新版本的最新情况,而且安全方面的进展似乎还在继续每天都在奔跑。
如果可能的话,我想要一些基于个人经验的事实。每一个提示或建议都值得赞赏。在采取实施步骤之前,我想确保自己有信心。
【问题讨论】:
标签: java security glassfish-3 jaas jaspic