我目前正致力于在我们的 Java Web 应用程序中实现企业身份验证机制,包括单点登录。Windows 网络是我们的主要目标,而 Kerberos 听起来是一个合理的选择。旁注:据我了解,Web(HTTP)环境中使用的 SSO 协议是 SPNEGO,它基本上是 Kerberos 的包装器。因此,听起来 Kerberos HTTP SSO 库实际上正在使用 SPNEGO——如果我错了,请纠正我。
当我开始研究这个话题时,我意识到没有明显的选择。让我列出这些:
- Spring 安全 Kerberos/SPNEGO 扩展。这是我第一次看到(因为我们已经在使用 Spring 安全性),但几年前它似乎停留在 v1.0.0 的第二个里程碑。只有这个SO question略微希望它可以用于生产。
- WAFFLE - Windows 身份验证功能框架。似乎很活跃,功能丰富。它可以“插入”为通用 servlet,也可以作为Spring 安全过滤器。
- SPNEGO SourceForge。看起来很轻量级,提供HTTP Servlet过滤器,教程很容易上手。
选择一个选项而不是另一个选项有什么特别的理由吗?周围还有其他选择吗?