Я использую Eclipse для разработки 2 частей приложения.
Веб-часть предоставляет службы REST, а запросы к службам фильтруются с использованием waffle.servlet.NegotiateSecurityFilter
, который извлекает информацию для входа в Windows для идентификации пользователя.
Клиентская часть использует HttpURLConnection
для отправки запросовна веб-часть.Насколько я понимаю, информация Ntlm автоматически упаковывается в запрос.
Пока я тестировал это в Eclipse, он работал нормально.Когда я развернул клиентский JAR, он не работал.Я получаю 401 Not Authenticated.
После небольшого исследования я обнаружил, что могу воспроизвести это в eclipe, установив для среды выполнения значение JRE вместо значения по умолчанию, которое является JDK.
У меня установлены JRE "1.8.0_201" и JDK "1.8.0_161".
Итак, просто изменив среду выполнения с JRE на JDK, я смогу установить соединение для аутентификации.
ЧтоJDK работает по-другому, и что я могу сделать, чтобы заставить клиента работать с JRE?