Я использую NameCallback и PasswordCallback для имени пользователя и пароля. Для имени пользователя и пароля всплывающее окно появляется в браузере, и когда я ввожу имя пользователя и пароль, JAAS аутентифицирует мой запрос.
На wirehark я видел, что приходит сообщение 401 Unauthorized (заголовок WWW-Authenticate), и когда я ввожу имя пользователя/пароль, создается HTTP-запрос с учетными данными (с заголовком авторизации) и отправляется на сервер.
Мое требование: я не хочу, чтобы всплывало всплывающее окно. Мое приложение на другом сервере имеет имя пользователя/пароль, поэтому, как только оно получило 401, на основе некоторой логики оно сгенерирует HTTP-запрос с заголовком/учетными данными авторизации. и отправил обратно.
FLow: Пользователь -> Другой сервер -> Мой Tomcat5.5
Здесь, на другом сервере, никто не может ввести имя пользователя/пароль вручную. Приложение развернуто, и оно только сгенерирует HTTP-запрос с учетными данными и отправит его обратно в tomcat.
Можем ли мы иметь какой-либо другой обратный вызов, который ведет себя так. Нужна ваша помощь. Пожалуйста, предоставьте мне отзыв, связанный с подходом.
Изменить вопрос:
Вот реальный случай:
Пользователь A сделал вызов (протокол SIP) на сервер XYZ. Приложение, развернутое на сервере XYZ, создает запрос HTTP REST и отправляет его на сервер Tomcat, где развернуто одно приложение, чтобы получить некоторые данные учетной записи пользователя. , мне придется его аутентифицировать. Я использую реализацию tomcat JAASRealm.
Теперь для аутентификации, что делает tomcat, он выводит окно имени пользователя/пароля на сервере XYZ. На сервере XYZ, поскольку приложение создало HTTP-запрос, поэтому здесь никто не вводит имя пользователя/пароль вручную (поскольку это не относится к Устройство пользователя А).
Я ищу способ, когда это всплывающее окно не появляется, и приложение, развернутое на сервере XYZ, должно делать что-то вроде:
если (ответ равен 401), создайте HTTP-запрос с учетными данными.
Поэтому я искал решение, в котором не появляется всплывающее окно. Теперь все ясно, пожалуйста, предложите.