Я пытаюсь реализовать простой сценарий Single Sign On, в котором некоторые из участвующих серверов будут окнами (IIS). Похоже, SPNEGO - разумный путь для этого.SPNEGO (генерация/проверка токенов kerberos) для SSO с использованием Python
Вот сценарий:
- пользователь входит в мои службы единого входа с использованием своего имени пользователя и пароля. Я удостоверяю его, используя какой-то механизм.
- В более позднее время пользователь хочет получить доступ к App A.
- запрос пользователя для приложения А перехватывается службы единого входа. Служба единого входа использует SPNEGO для входа пользователя, чтобы App A:
- служба SSO попадает на веб-страницу App A, получает "WWW-Authenticate: Negotiate" ответ
- служба SSO генерирует «Авторизация: Negotiate xxx "от имени пользователя, отвечает на приложение A. Теперь пользователь зарегистрирован в приложении A.
- Служба SSO перехватывает последующие пользовательские запросы для приложения A, вставляя в них заголовок авторизации перед передачей их на приложение А.
- запрос пользователя для приложения А перехватывается службы единого входа. Служба единого входа использует SPNEGO для входа пользователя, чтобы App A:
Звучит ли это правильно?
мне нужны две вещи (по крайней мере, что я могу думать сейчас):
- способность генерировать «авторизации: Negotiate ххх» маркер от имени пользователя, желательно с использованием Python
- в способность проверять заголовки «Authorization: Negotiate xxx» в Python (для более поздней части проекта)