JCIFS与Windows 2008 R2域控制器不兼容吗?

Saj*_*hew 33 java jcifs windows-7 windows-server-2008-r2 ntlmv2

我们正在使用JCIFS(1.3.15)从仅发送NTLM v2响应的Windows 7客户端进行身份验证.

当我们使用Windows 2008 R2域控制器时,我们收到以下错误

jcifs.smb.SmbException: The parameter is incorrect.
    at jcifs.smb.SmbTransport.checkStatus(SmbTransport.java:545)
    at jcifs.smb.SmbTransport.send(SmbTransport.java:645)
    at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:322)
    at jcifs.smb.SmbSession.send(SmbSession.java:224)
    at jcifs.smb.SmbTree.treeConnect(SmbTree.java:176)
    at jcifs.smb.SmbSession.logon(SmbSession.java:153)
    at jcifs.smb.SmbSession.logon(SmbSession.java:146)
Run Code Online (Sandbox Code Playgroud)

在以下情况下,身份验证机制可以正常工作

1)客户端支持NTLM v1和v2(客户端的lmCompatibility为1),域控制器为Windows 2003

2)客户端仅发送NTLM v2(客户端的lmCompatibility为3),域控制器为Windows 2003

3)客户端支持NTLM v1和v2(客户端的lmCompatibility为1),域控制器为Windows 2008

但是当客户端仅发送NTLM v2(客户端的lmCompatibility为3)且域控制器为Windows 2008时,我们会收到上述错误

有些人可以帮助我们

提前致谢

Sajo C Mathew

gre*_*ker 1

JCifs 已被放弃。如果您需要 NTLM2,您可以花费 250 美元(或 500 美元无限制)迁移到商业解决方案:http: //www.ioplex.com/jespa.html,或者免费从 Liferay 获取 NTLM 部分:http://sourceforge。净/项目/ntlmv2auth/ .

NTLM 正在被放弃(主要是因为安全漏洞)。也许您可以迁移到 Kerberos?