Как приложение Java подключается к веб-сервису wcf https с проверкой подлинности NTLM?
У нас есть веб-служба wcf, которая развернута на IIS7, и она открывает проверку подлинности Ntlm, следуя инструкции по настройке веб-службы wcf.
<wsHttpBinding>
<binding name="TransportSecurity">
<security mode="Transport">
<transport clientCredentialType="Ntlm"/>
</security>
</binding>
</wsHttpBinding>
У нас также есть Java-приложение, и оно должно подключаться к вышеуказанному веб-сервису. Мы используем Axis для генерации прокси веб-службы, но обнаруживаем, что java-приложение не может быть аутентифицировано сервисной стороной. Я много искал в интернете и обнаружил, что некоторые сторонние библиотеки (например, ntlmv2-auth и Jespa) поддерживают Ntlm v2.
Мы попытались использовать базовую аутентификацию и смогли успешно подключиться к веб-сервису, но все же хотим использовать аутентификацию Ntlm.
Существуют ли какие-либо встроенные библиотеки, созданные Java/Sun/Oracle для поддержки nltm v2, кроме сторонних библиотек? Может кто-нибудь сравнить ntlmv2-auth с Jespa, чтобы я мог оценить, какой из них подходит в моей ситуации?
1 ответ
Библиотека Jespa хороша для такого рода проблем. Если вы можете заставить свой код использовать класс jespa.http.HttpUrlConnection для запросов, он будет правильно выполнять NTLMv2.