Я занимаюсь разработкой приложения, которое поддерживает как базовый, так и NTLM-аутентификационный прокси-сервер с использованием Apache HttpClient версии 4.5.2.Пользовательский интерфейс в настоящее время не спрашивает пользователя о типе аутентификации в прокси и считается NTLM, если пользователь входит в домен, как показано ниже:
Credentials credentials = null;
if (domain != null && domain.length() > 0) {
credentials = new NTCredentials(username, password, client, domain);
else {
credentials = new UsernamePasswordCredentials(username, password);
}
Этот подход работал в большинстве случаев.Однако в одном развертывании, где прокси-сервер NTLM являлся частью рабочей группы (а не частью домена), домен был пустым, и по приведенной выше логике использовались учетные данные UsernamePasswordCredentials.Поскольку прокси-сервер поддерживает NTLM и должен иметь учетные данные, чтобы быть экземпляром NTCredentials, запрос не выполнен.
Есть ли способ, которым я могу сделать этот код универсальным, как это в прокси-сервере NTLM, который является частьюрабочая группа, не спрашивая пользователя о типе аутентификации?