基于Java的Web应用程序的Windows身份验证,如何?

fin*_*007 14 java windows authentication web-applications

我开发了几个基于Java的Web应用程序.两个应用程序都有基于某些ActiveX目录实现的单独的身份验证逻辑.

现在,我需要将其更改为Windows身份验证,以便每当用户点击我的Web应用程序的URL时,而不是将其重定向到登录页面,我需要检查他的Windows凭据.

我不想将他的Windows凭据存储在URL中.

有什么好办法吗?

cde*_*zaq 9

根据您希望Web应用程序具有的集成级别,Spring Security应该让您了解您所追求的所有方面.

如果可以接受重定向到登录页面并通过LDAP对Active Directory服务器输入的凭据进行身份验证,则可以使用LDAP扩展.

如果您想要更多的单点登录(SSO)流,并且您的用户已经针对相关的权威Active Directory服务器进行了身份验证(例如,他们已登录到域),那么Spring Security 的Kerberos插件可能更具吸引力,因为您的用户只需要访问Web应用程序,而不必执行任何其他身份验证步骤.系统将在幕后处理它.

您还可以组合/分层这些方法,如果您首先尝试基于Kerberos的身份验证,如果这些方法失败,则回退到登录表单和基于LDAP的身份验证.

如果您需要超越它,Spring Security足够灵活,允许您在需要时使用OpenID或应用内身份验证.


Roy*_*ove 2

我建议使用 Active Directory 通过 LDAP 公开其 Windows 身份验证层,然后可以通过Spring Security之类的工具进行攻击。

这将有效地强制任何使用您的应用程序的人使用他们的 Windows 登录。