Каковы настройки системы Windows для использования примитивной проверки подлинности NTLM, поддерживаемой Apache Http Client? - PullRequest
2 голосов
/ 23 августа 2011

Мы используем клиент Apache Axis для связи с сервером отчетов. Apache Client использует Apache Http Client для проверки подлинности NTLM. Основано на следующем посте

Как заставить jcifs хорошо играть с осью apache

похоже, что он поддерживает только примитивный NTLM. Один из наших компьютеров настроен на работу с последней аутентификацией NTLM.

Я хочу знать, где находится этот параметр, где я могу выполнить сброс для использования примитивной аутентификации NTLM, поддерживаемой Apache Http Client.

1 Ответ

0 голосов
/ 15 марта 2013

HttpClient не поддерживает NTLM v2, поэтому я использую библиотеку JCIFS для возврата типа сообщения NTLM v1,2,3, как описано на этом веб-сайте

http://devsac.blogspot.com/2010/10/supoprt-for-ntlmv2-with-apache.html

Я только что использовал JCIFS_NTLMScheme.javaфайл с сайта выше, чтобы зарегистрировать схему аутентификации, и это сработало !!!!

Пример клиента:

List authSchema = new ArrayList();
AuthPolicy.registerAuthScheme(AuthPolicy.NTLM, org.tempuri.JCIFS_NTLMScheme.class);
HttpTransportProperties.Authenticator auth = new HttpTransportProperties.Authenticator();
auth.setUsername("");
auth.setPassword("");
auth.setDomain("");
auth.setHost("");
auth.setPort();
List authPrefs = new ArrayList(1);
authPrefs.add(AuthPolicy.NTLM);
auth.setAuthSchemes(authPrefs);
stub._getServiceClient().getOptions().setProperty(org.apache.axis2.transport.http.HTTPConstants.AUTHENTICATE, auth);
...