проблема с NTLM Auth(kotlin)
Столкнулся с проблемой к подключению к веб-сервису, на веб сервисе подключена сетевая аунтификация NTLM, искал информацию по этому вопросу, наткнулся на обсуждения Support NTLM auth, но честно говоря не разобрался как это использовать, пытался сделать через basic auth, но также ничего не вышло
class NtlmAuthenticator(private val username: String, private val password: String) :
Authenticator {
override fun authenticate(route: Route?, response: Response): Request? {
val ntlmHeader = response.header("WWW-Authenticate") ?: return null
if (ntlmHeader.contains("NTLM")) {
val credential = Credentials.basic(username,password)
return response.request.newBuilder()
.header("Authorization", credential)
.build()
}
return null
}
}
val interceptor = HttpLoggingInterceptor()
interceptor.level = HttpLoggingInterceptor.Level.BODY
val client = OkHttpClient.Builder()
.authenticator(NtlmAuthenticator("логин","пароль"))
.addInterceptor(interceptor)
.build()
Получал 401 код и все.
Может кто знает как это можно реализовать, я отправляю SOAP запросы, возможно в хедерах надо что то прописать? Я использую retrofit2 и okhttp3