1、Http连接有两种方法穿越NTLM的HTTP Proxy。
1.1、第一种使用HttpURLConnection,详细参见:
http://www.ibm.com/developerworks/cn/java/j-lo-jse62/index.html
1.2、第二种是使用org.apache.commons.httpclient.HttpClient,该类介绍详见:
http://blog.csdn.net/joy_jiang/archive/2005/03/17/321858.aspx
2、axis 1.4的包中使用的HTTP通信的类是org.apache.axis.transport.http.HTTPSender,该类使用了Socket直接通信
3、为了实现穿越NTLM的HTTP代理,修改org.apache.axis.client包下的client-config.wsdd文件,axis提供了1.2的方式解决ntlm认证的问题。
<transport name="http" pivot="java:org.apache.axis.transport.http.CommonsHTTPSender"> < transport name="http" pivot="java:org.apache.axis.transport.http.CommonsHTTPSender"/ >
4、axis 1.4的CommonsHTTPSender有问题(也许只是某些下载版本),直接运行会报host is null类似的错,细观之,发现getHostConfiguration函数中在走proxy的时候未调用config.setHost(....)所致,修改后重新打包
5、需要穿越proxy的时候,添加下面代码即可。
</transport>
Properties systemSettings = System.getProperties();<o:p></o:p>
systemSettings.put("http.proxyHost","xxx.com") ;<o:p></o:p>
systemSettings.put("http.proxyPort", "8080") ;<o:p></o:p>
systemSettings.put("http.proxyUser", "domain\\name") ;<o:p></o:p>
systemSettings.put("http.proxyPassword", "123456") ;<o:p></o:p>
http://docs.oracle.com/javase/6/docs/technotes/guides/net/http-auth.html
分享到:
相关推荐
NTLM Authorization Proxy Server(NTLAMPS)是一个开源项目,其主要目的是为了允许非Microsoft的浏览器或其他客户端通过NT LAN Manager(NTLM)身份验证协议访问使用Internet Information Services(IIS)的服务器...
纯PHP中的ntlm-proxy 自由灵感来自: 特征仅域控制器支持(不支持LDAP); 验证用户凭据(不是其他检查); 不支持AD组。安装$ git clone https://github.com/davelip/php-ntlm-proxy.git克隆存储库$ cd ...
`ntlm_proxy_auth_check` 是一个针对需要NTLM身份验证的代理服务器进行健康检查的脚本,特别适用于那些使用`ldirectord`负载均衡器的环境。 `ldirectord`是一款轻量级的负载均衡软件,它是Linux HA项目的一部分,...
2. **配置HTTP连接**:使用Apache HttpClient或者其他HTTP客户端库,设置 NTLM 身份验证器,确保在发起HTTP请求时使用正确的认证头。 ```java HttpClient client = ...; // 初始化HttpClient client.getParams()....
将非NTLM HTTP客户端请求转发到NTLM代理服务器(即Microsoft IAS)。 也可以将本地端口转发到远程计算机。
NT LAN Manager(NTLM)是一种微软实现的身份验证协议,常用于Windows环境下的AD域身份验证。下面我们将详细探讨如何在Java环境中利用NTLM协议集成AD域进行登录,并了解相关文件的作用。 首先,让我们理解NTLM协议...
_http proxy" 暗示了这个压缩包可能包含一个与HTTP代理相关的组件或库,可能是iDHTTP,这是一个在Delphi或C++Builder等RAD Studio开发环境中使用的网络组件。iDHTTP是Indy(Internet Direct)套件的一部分,用于实现...
LM和NTLM哈希是两种广泛用于Windows身份验证的安全机制,它们主要用于存储用户密码的不可逆版本,以保护用户凭证不被轻易破解。C++作为一种强大的编程语言,可以用来实现这两种哈希算法。在Visual Studio 2008环境下...
NTLM 认证基本原理及编程简介 NTLM 认证是一种广泛使用的身份验证机制,它在 Windows NT 系统中广泛应用。NTLM 认证机制是基于挑战/响应模式的,它可以 garantir 服务器和客户机之间的身份验证。下面是 NTLM 认证的...
requests-ntlm, 请求的NTLM身份验证支持 请求 ntlm 这个包允许使用请求库进行 HTTP NTLM身份验证。用法HttpNtlmAuth 扩展请求 AuthBase,因此使用很简单:import requestsfrom requests_ntlm
NTLM(NT LAN Manager)是Windows操作系统中使用的一种身份验证协议,主要负责在网络环境中提供安全认证服务。在本文中,我们将深入探讨NTLM的工作原理、挑战模式、散列认证过程以及NTLM算法的实现。 NTLM协议是...
NTLM(NT LAN Manager)是微软Windows操作系统中的一种身份验证协议,主要用于网络资源访问的身份验证。这个协议在早期的Windows版本中广泛使用,虽然现在已被更安全的Kerberos协议取代,但在某些环境中,尤其是与旧...
### 绕过NTLM认证方式的另一种方法 #### 背景与意义 NTLM (NT LAN Manager) 是一种由Microsoft开发的安全协议,用于Windows环境中用户的认证。在默认配置下,许多Windows系统的telnet服务会启用NTLM认证,这对于...
关于NTLM验证 由于Telnet功能太强大,而且也是入侵者使用最频繁的登录手段之一,因此微软公司为Telnet添加了身份验证,称为NTLM验证,它要求Telnet终端除了需要有Telnet服务主机的用户名和密码外,还需要满足NTLM...
NTLM (NT LAN Manager) 是一种身份验证协议,主要用于Windows操作系统环境中的网络认证。它基于挑战-响应机制,提供了一种安全的用户身份验证方式。在Delphi编程中,使用NTLM进行身份验证通常涉及到系统安全支持提供...
在Axis2中实现NTLM认证,你需要引入一些额外的库,如jcifs-ntlm-http.jar,它提供了处理NTLM认证的HTTP连接管理器。这个库允许你通过NTLM协议与服务器进行安全通信。此外,可能还需要axis2-adb、axis2-kernel等Axis2...
Python library that provides NTLM support, including an authentication handler for urllib2. Works with pass-the-hash in additon to password authentication.
在这个实例中,我们将探讨如何利用ActiveX技术通过NTLM(NT LAN Manager)协议进行http认证。NTLM是一种由Microsoft开发的身份验证协议,广泛应用于Windows网络环境中。 首先,让我们了解ActiveX。ActiveX是微软...
HTTP PROXY中NTLM的客户端的C源代码。包含相关的DES等算法在内。Base64的算法,是通过网上共产主义获取,MD4,MD5,HMAC MD5的算法是RFC中提供的,其余的可以根据下面链接的步骤进行编写。我提供一个源代码的例子。...
该库的某些部分应易于重用,ntlm-proxy与应用程序无关,并且应与Selenium或其他解决方案一起使用-但是您必须自己将精简程序提供给应用程序。 从3.0.0起的变化 启动器已经过重构,可以在内部启动ntlm-proxy(而不是...