用于 Web 用户身份验证的 Java 选项
Posted
技术标签:
【中文标题】用于 Web 用户身份验证的 Java 选项【英文标题】:Java options for web user authentication 【发布时间】:2010-11-09 13:42:24 【问题描述】:我正在为公共网络应用寻找安全的用户登录/会话管理组件。 Spring Security 似乎有潜力,还有其他高质量的替代方案吗?
从概念上讲,这很容易,我们目前的代码运行良好,但我更愿意使用经过公开审查的安全漏洞代码。
需求:
登录 退出 安全会话令牌管理(令牌不可猜测) 会话到期 Java/Tomcat 支持【问题讨论】:
【参考方案1】:Apache Shiro,以前称为 Ki 和 JSecurity,“是一个强大而灵活的开源安全框架,可以干净地处理身份验证、授权、企业会话管理和加密。”它已经存在了一段时间(2006 年 4 月 18 日首次公开发布),目前处于 Apache 孵化器中。只是想我会提到它作为 Spring Security 的替代品(尽管我自己更喜欢 Spring Security)。
【讨论】:
您想评论一下什么时候从基于容器的安全性转向像 shiro 或其他替代品这样的替代品是好的?在此处查看更多重点问题:***.com/questions/7782720/…【参考方案2】:如果 Tomcat 不是硬性要求,您可以考虑在 Sun 的 Glassfish 服务器上部署您的应用程序。 Glassfish 是 Java EE 技术的参考实现,其中包括 support for security。 Glassfish 享有良好的声誉,并且在易于管理方面得分很高。
【讨论】:
使用 GlassFish/Java EE 安全功能与 Apache Shiro 的优缺点是什么?在开发和部署期间?【参考方案3】:spring security 以前的 acegi,是另一个开源选项。如果您使用的是 spring,这是一个不错的选择
【讨论】:
以上是关于用于 Web 用户身份验证的 Java 选项的主要内容,如果未能解决你的问题,请参考以下文章
java- 哪种方式易于实现且安全,用于 Web 应用程序/Web 服务中的最终用户身份验证
ASP.NET Core Web API 模板中没有个人用户帐户身份验证选项
用于用户身份验证的个人访问令牌和 json Web 令牌有啥区别?