Java / WebLogic应用程序中的集成Windows身份validation(NTLM)?

我们的团队构建了一个WebLogic Intranet站点。 用户当前必须键入其Active Directory登录名/密码才能访问该站点。

由于我们的大多数用户已经登录到域,因此我们希望使用集成Windows身份validation,以便用户无需重新键入其登录密码。

我已经使用Windows / IIS上托管的.NET应用程序完成了这项工作。 但是,此应用程序内置于WebLogic / Java中,并托管在RedHat Linux上。

是否有可用的分步指南或原型应用程序?

(请假设我们在Internet Explorer浏览器上标准化了这个问题。)

看看jcifs 。 虽然它的机制已被弃用(它不支持NTLMv2),但它仍在我的项目中工作。 您可能必须使用旧版本。 他们建议使用jespa ,但它不是免费的。

还有spnego ,它也有一个filter。 和tomcatspnego 。 但我不知道他们使用起来有多容易。

华夫饼看起来也很有趣。

这是另一个答案,其中包含一些细节: 在Linux上使用Java对Active Directory进行身份validation

到目前为止我只使用了jcifs,所以我不能告诉你哪个选项最好。 Apaches HttpClient也有一些function,我使用它,但不是作为Web应用程序中的SSO。

编辑:

我发现了另一个项目: ntlm-authentication-in-java ,但我还没有使用或测试过它。

看看这个答案 ,如果你使用NTLMv1,它会获取登录用户的用户名。 (虽然不适用于NTLMv2 ..)

WebLogic本身支持SPNEGO,因此您无需使用变通方法。 此处提供了更多文档 – http://docs.oracle.com/cd/E21764_01/web.1111/e13707/sso.htm 。 您还可以参考此博客文章了解分步流程 – http://oraclelabspace.blogspot.in/2012/01/configurining-sso-using-kerberosspnego.html