Как получить HTTP-заголовки (авторизацию) в Java-агенте Lotus Domino? - PullRequest
2 голосов
/ 04 марта 2011

У меня есть внешнее приложение (не Domino), которое отправляет данные агенту Domino Java.

Я могу прочитать данные с помощью переменной CQUI REQUEST_CONTENT, все хорошо.

Однако, поскольку я хочу запретить кому-либо запускать этот агент, имя пользователя / пароль отправляется в заголовке HTTP («Авторизация» в Basic Auth, кодируется base64).Теперь я хочу прочитать это, расшифровать и проверить вручную, если предоставленные имя пользователя / пароль в порядке (из базы данных, содержащей все права доступа, пользовательская база данных, а не каталог домино).

Мой вопрос: как можноЯ получаю доступ к заголовкам HTTP в агенте Java, в основном для «Авторизации»?

Кстати, все наши серверы Domino используют «Аутентификацию по формам» (SSO), так что я хочу подделатьБазовая аутентификация с использованием моего пользовательского решения.

Возможно ли это?Спасибо за вашу помощь!

1 Ответ

2 голосов
/ 23 декабря 2013

Если вы хотите получить доступ к заголовкам HTTP в Java-агенте, вы можете искать их в объекте контекста Document в агенте, не зная, получите ли вы конкретно переменную заголовка «Authorization» (если она есть, то она"HTTP_AUTHORIZATION").Domino использует стандартные переменные CGI , но если вы получите документ Context Context и выполните цикл по полям документа, вы должны увидеть любые дополнительные переменные.

(Вы можетехотите заставить HTTPS на сервере усилить безопасность в соответствии с подходом, который вы используете, поскольку преобразование данных в BASE64 не является безопасным методом шифрования.)

...