Я пытаюсь настроить аутентификацию org.asynchttpclient:async-http-client:2.8.1
следующим образом:
BoundRequestBuilder requestBuilder = ...;
Realm realm = new Realm.Builder()
.setUsePreemptiveAuth(true)
.setScheme(AuthScheme.SPNEGO)
.build();
requestBuilder.setRealm(realm);
requestBuilder.setHeader("Authorization",
"Negotiate " +
kerberosTokenCache.get(new URL(baseUrl).getHost()));
Response response = httpClient.executeRequest(request)
.get(timeout, TimeUnit.MILLISECONDS);
На удаленном компьютере (к сожалению, к сожалению, у меня нет прав администратора) возникает некоторая ошибка, которая возвращает HTTP 500-ответ. Администратор говорит, что это вызвано сбоем аутентификации, и пульт просто не отвечает значимым исключением (из-за ошибки), но это так.
Я вижу, что токен отправляется. Я запускаю kinit
, а когда я klist
, я вижу токены.
JDK (1.8.0_144) имеет включенную JCE.
Код выше выглядит правильно или есть что-то еще? Существуют ли системные свойства, которые нужно включить?