Как внутренние веб-сайты в корпоративных сетях автоматически аутентифицируют пользователей? - PullRequest
0 голосов
/ 06 августа 2020

В корпоративной среде, когда пользователь входит в систему на своем ноутбуке, он может автоматически пройти аутентификацию для внутренних веб-сайтов.

Как это реализовано? Как веб-сайт и браузер узнают пользователя и аутентифицируют его?

Ответы [ 2 ]

4 голосов
/ 06 августа 2020

Есть множество способов, но канонический метод - через протокол вроде Kerberos. Процесс выглядит следующим образом:

  1. Войдите в систему с какими-либо учетными данными, эти учетные данные предоставляют вам так называемый билет выдачи билетов (TGT).
  2. Вы открываете свой браузер и go на внутренний веб-сайт https://internal/page.html.
  3. Веб-сайт отвечает кодом ошибки HTTP 401 и заголовком WWW-Authenticate: Negotiate.
  4. Браузер обнаруживает это и вызывает GSS / SSPI в ОС и говорит: «Пожалуйста, дайте мне билет на http/internal с использованием пакета negotiate».
  5. Службы GSS / SSPI видят, что у вас есть TGT, и звонят в KD C (Active Directory) и запросите билет на http/internal.
  6. KD C говорит "конечно" и возвращает билет клиенту.
  7. Служба GSS / SSPI преобразует билет в так называемый AP-REQ, оборачивает его в сообщение SPNEGO и возвращает его браузеру.
  8. Браузер кодирует его в base64, вставляет в заголовок Authorization: Negotiate {base64} и повторяет запрос на сайт.
  9. Сайт получает заголовок, определяет его ' s Согласование, поэтому он передает его собственным службам GSS / SSPI.
  10. Эти службы декодируют сообщение, извлекают AP-REQ, расшифровывают его и проверяют, что он понимает.
  11. Идентификационные данные извлекаются из заявки и представляются внутренним компонентам веб-приложения.

Все, что сделал конечный пользователь, это (1) и (2). Все остальное сделал клиентский компьютер.

Тогда протоколы более высокого уровня, такие как SAML и другие, могут полагаться на приведенный выше поток для аутентификации вас в IdP, который затем может передавать токены любым зависимым сторонам, которые у вас могут быть.

0 голосов
/ 06 августа 2020

Есть несколько упомянутых способов. Один из них - через Windows встроенную аутентификацию и любые методы единого входа, такие как OKTA, Microsoft ADFS.

Это довольно хороший опыт с точки зрения пользователя, поскольку нам не нужно запоминать так много учетных данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...