使用Apache Http Client支持的基本NTLM身份验证的windows系统设置是什么?



我们使用Apache Axis客户端与报表服务器通信。Apache Client使用Apache Http Client进行NTLM认证。基于下面的post

如何让jcifs与apache axis兼容

看起来只支持基本的NTLM。我们的一台机器被设置为使用最新的NTLM身份验证。

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

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

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

我只是使用上述网站的JCIFS_NTLMScheme.java文件来注册认证方案,它工作!!!!

样本客户:

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);

最新更新