2009-07-09 65 views
5

我正在寻找一个用于公共Web应用程序的安全用户登录/会话管理组件。 Spring Security似乎有潜力,还有其他高质量的替代品吗?用于Web用户身份验证的Java选项

从概念上讲,这很容易,我们目前的代码工作正常,但我宁愿使用已公开审查安全缺陷的代码。

需求:

  • 登录
  • 注销
  • 安全会话令牌管理(令牌不是猜测的)
  • 会话过期
  • 的Java/Tomcat支持

回答

4

Apache Shiro,之前称为Ki和JSecurity,“是一个功能强大且灵活的开放源代码安全框架,可清楚处理认证,授权,企业会话管理和加密。”它已经有一段时间了(2006年4月18日第一次公开发布),目前在Apache孵化器中。只是想我会提到它作为Spring Security的替代品(尽管我自己更喜欢Spring Security)。

+0

你想评论什么时候可以从基于容器的安全转移到替代方案如shiro或其他?在这里看到更多的重点问题:http://stackoverflow.com/questions/7782720/when-to-move-from-container-managed-security-to-alternatives-like-apache-shiro – 2011-10-16 06:39:18

1

如果Tomcat不是一个硬性要求,您可以考虑在Sun的Glassfish服务器上部署您的应用程序。 Glassfish是Java EE技术的参考实现,其中包括support for security。 Glassfish在易于管理方面拥有良好的声誉和高分。

+0

使用GlassFish的优点/缺点是什么/ Java EE安全特性与Apache Shiro相比?在开发和部署期间都是如此? – 2011-04-06 18:41:49

0

spring security以前的acegi是另一个开源的选项。如果你使用的是弹簧,这是一个很好的选择