我们正在使用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