СЦЕНАРИЙ:
У меня есть веб-приложение на Java, работающее в последней версии Tomcat 6. У меня также есть один фильтр сервлетов, который обеспечивает аутентификацию. Я поддерживаю BASIC auth, и он работает нормально - большую часть времени.
В первый раз, когда браузер [выбирает любой из них - IE, FireFox, Opera, Safari, Chrome] нажимает на один из наших защищенных URL-адресов, он отображает стандартное приглашение входа в систему для конкретного браузера. Если вы введете правильное имя пользователя / пароль - все в порядке, новый сеанс создан, и все работает нормально.
Если, однако, вы ввели неверные учетные данные в начальном диалоговом окне аутентификации BASIC, моя логика фильтра аутентификации обрабатывает это, возвращая еще один ответ 401.
ПРОБЛЕМА:
К сожалению, на данный момент Chrome является единственным браузером, который отображает еще одно диалоговое окно проверки подлинности BASIC. Все остальные перечисленные браузеры автоматически отправляют кэшированный заголовок «Authorization: Basic ..» - вместо того, чтобы очищать его и снова запрашивать пользователя.
Если кто-нибудь видел это или может знать, почему это происходит, я был бы очень признателен за любые предложения!
Спасибо и С наилучшими пожеланиями,
Боб