2010-12-15 3 views
33

Мы используем JCIFS (1.3.15) для аутентификации с клиента Windows 7, который отправляет только ответы NTLM v2.Является ли JCIFS несовместимым с контроллерами домена Windows 2008 R2?

Мы получаем следующее сообщение об ошибке, когда мы использовать контроллер домена 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) 

Механизм аутентификации отлично работает в следующих случаях

1) Клиент поддерживает как NTLM v1 и v2 (lmCompatibility клиента 1), а контроллер домена - Windows 2003

2) Клиент отправляет только NTLM v2 (lmCompatibility of client is 3), а контроллер домена - Windows 2003

3) Клиент поддерживает NTLM v1 и v2 (lmCompatibility от клиента 1) и контроллер домена Windows 2008

но получает вышеупомянутую ошибку, когда клиент отправляет только NTLM v2 (lmCompatibility от клиента 3) и контроллер домена Windows 2008

Может некоторые тела помочь нам здесь

заранее спасибо

Sajo C Матфей

+0

Какая версия JCIFS и какая JVM вы используете? – weloytty 2010-12-15 10:55:09

ответ

1

JCifs заброшен. Если вам нужен NTLM2, вы можете перейти на коммерческое решение за 250 долларов США (или без 500 долларов США): http://www.ioplex.com/jespa.html или бесплатно, часть NTLM, выведенная из Liferay: http://sourceforge.net/projects/ntlmv2auth/.

Отказ NTLM (в основном из-за уязвимостей безопасности). Может быть, вы можете перейти на Kerberos?

0

JCifs 1.3.18 правильно поддерживает NTLMv2 (у меня была такая же проблема).

Смежные вопросы