使用 Apache Http 客户端支持的原始 NTLM 身份验证的 Windows 系统设置是什么?

发布于 2024-12-01 09:03:56 字数 346 浏览 3 评论 0原文

我们使用 Apache Axis 客户端与报表服务器进行通信。 Apache 客户端使用 Apache Http 客户端进行 NTLM 身份验证。基于以下帖子

如何获取 jcifs为了与 apache axis 很好地配合

它看起来只支持原始的 NTLM。我们的一台机器设置为支持最新的 NTLM 身份验证。

我想知道这个设置在哪里可以重置以使用 Apache Http 客户端支持的原始 NTLM 身份验证。

We are using Apache Axis client to communicate to a report server. The Apache Client uses Apache Http Client for NTLM authentication. Based on the below post

How can I get jcifs to play nicely with apache axis

it looks like it only supports the primitive NTLM. One of our machines is set to work with the recent NTLM authentication.

I want to know where is this setting where I can reset to use the primitive NTLM authentication supported by Apache Http Client.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浊酒尽余欢 2024-12-08 09:03:56

HttpClient 不支持 NTLM v2,因此我使用 JCIFS 库返回 NTLM v1,2,3 消息类型,如本网站所述

http://devsac.blogspot.com/2010/10/supoprt-for-ntlmv2-with-apache.html

我刚刚使用上述网站中的 JCIFS_NTLMScheme.java 文件来注册auth 方案并且它有效!

示例客户端:

List authSchema = new ArrayList();
AuthPolicy.registerAuthScheme(AuthPolicy.NTLM, org.tempuri.JCIFS_NTLMScheme.class);
HttpTransportProperties.Authenticator auth = new HttpTransportProperties.Authenticator();
auth.setUsername("");
auth.setPassword("");
auth.setDomain("");
auth.setHost("");
auth.setPort();
List authPrefs = new ArrayList(1);
authPrefs.add(AuthPolicy.NTLM);
auth.setAuthSchemes(authPrefs);
stub._getServiceClient().getOptions().setProperty(org.apache.axis2.transport.http.HTTPConstants.AUTHENTICATE, auth);

HttpClient doesnt support NTLM v2 hence I use JCIFS library to return NTLM v1,2,3 message type as described in this website

http://devsac.blogspot.com/2010/10/supoprt-for-ntlmv2-with-apache.html

I just used the JCIFS_NTLMScheme.java file from the above website to register the auth scheme and it worked !!!!

Sample client:

List authSchema = new ArrayList();
AuthPolicy.registerAuthScheme(AuthPolicy.NTLM, org.tempuri.JCIFS_NTLMScheme.class);
HttpTransportProperties.Authenticator auth = new HttpTransportProperties.Authenticator();
auth.setUsername("");
auth.setPassword("");
auth.setDomain("");
auth.setHost("");
auth.setPort();
List authPrefs = new ArrayList(1);
authPrefs.add(AuthPolicy.NTLM);
auth.setAuthSchemes(authPrefs);
stub._getServiceClient().getOptions().setProperty(org.apache.axis2.transport.http.HTTPConstants.AUTHENTICATE, auth);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文