利用jcifs进行NTLM协议认证,生成ws访问客户端
发布时间:2020-12-13 20:46:57 所属栏目:PHP教程 来源:网络整理
导读:调用在windows server 2012 的IIS上部署的webservice服务需要进行NTLM协议认证,为了能正常利用cxf生成客户端,重要解决的是需要windows NT authentication,可以采取早前的开源库jcifs。 span style=font-size:14px;public static void main(String[] args)
调用在windows server 2012 的IIS上部署的webservice服务需要进行NTLM协议认证,为了能正常利用cxf生成客户端,重要解决的是需要windows NT authentication,可以采取早前的开源库jcifs。
<span style="font-size:14px;">public static void main(String[] args) {
Config.registerSmbURLHandler();
String domain = "domain";
String user = "username";
String password = "password";
Config.setProperty("jcifs.smb.client.domain",domain);
Config.setProperty("jcifs.smb.client.username",user);
Config.setProperty("jcifs.smb.client.password",password);
try {
Config.setProperty("jcifs.netbios.hostname",Config.getProperty("jcifs.netbios.hostname",InetAddress.getLocalHost().getHostName()));
org.apache.cxf.tools.wsdlto.WSDLToJava.main(
new String[]{
"-p","com.test","-d","c: est","-client","http://test.com/ws?wsdl"
});
} catch (Exception ex) {
ex.printStackTrace();
}
}</span>
扩大
===
NTLM是NT LAN Manager的缩写,这也说明了协议的来源。NTLM 是 Windows NT 初期版本的标准安全协议,Windows 2000 支持 NTLM 是为了保持向后兼容。初期SMB协议在网络上传输明文口令。后来出现
LAN Manager Challenge/Response 验证机制,简称LM,它是如此简单以致很容易就被破解。微软提出了WindowsNT挑战/响应验证机制,称之为NTLM。现在已有了更新的NTLMv2和Kerberos验证体系。NTLM是windows初期安全协议,因向后兼容性而保存下来。NTLM是NT
LAN Manager的缩写,即NT LAN管理器
NTLM Authentication Scheme for HTTP
http://www.innovation.ch/personal/ronald/ntlm.html
NTLM是可以进行域单点的1种协议,而JCISF可以作为实现库
http://www.cnblogs.com/adylee/archive/2007/11/28/975213.html
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |