集成Windows身份验证弹簧安全性

时间:2017-02-01 09:56:31

标签: spring-security jboss single-sign-on spring-oauth2 spring-security-kerberos

  • 尝试在Windows环境中根据需要成功运行waffle,但我的应用程序服务器托管在* nix环境中。
  • 所以华夫饼解决方案不符合我的要求。

  • 与Waffle无法满足我的要求相比,尝试配置kerberos解决方案非常困难。

我的要求 - 当用户点击我的网络应用程序的URL时,他/她将通过Windows身份验证进行身份验证,或者如果可能,可以获得远程用户或客户端名称(Windows帐户名称)来自请求对象。

任何建议都会有所帮助。

2 个答案:

答案 0 :(得分:0)

如果您只有普通AD(没有ADFS),那么唯一的选择是使用SPNEGO(spring-security-kerberos)来为您的应用程序“自动登录”(SSO)。 UserPrincipalName将在Kerberos令牌中提供。生成密钥表文件(对于您的应用程序/服务)时,请务必使用'/ crypto all'并注意KeyVersionNumber(作为'ktpass'更新/增加AD中的密钥版本)。但是,客户端必须能够为您的应用程序获取服务票证(即Windows客户端必须是域的一部分)。另请注意,当客户端无法获取Kerberos服务票证时,IE可能会回退到呈现NTLM令牌。 AD和浏览器配置/行为比服务器端更具挑战性。

答案 1 :(得分:0)

使用参考链接

实现所需
  1. http://kb.kaminskiengineering.com/node/89
  2. NTLM Authentication in a Web Application (java) 其他想要获得更多安全性的人也可以使用kerberos-spengo,因为春季安全停止支持我使用的上述方法。