SSO (Single Sign-On / Единый вход) (продолжение к предыдущему посту)
SSO можно представить как главный ключ, открывающий все разные замки. Эта технология позволяет пользователю входить в различные системы, используя единый набор учётных данных.
В наше время, когда мы получаем доступ к большему количеству приложений, чем когда-либо прежде, SSO становится важным решением для борьбы с усталостью от множества паролей и упрощает пользовательский опыт.
Чтобы полностью понять процесс SSO, давайте рассмотрим, как пользователь входит в LinkedIn с помощью Google в качестве поставщика удостоверений:
1. Запрос на доступ
Сначала пользователь пытается получить доступ к поставщику услуг (LinkedIn). На этом этапе пользователю предлагаются варианты входа в систему, и в этом примере он выбирает «Войти через Google».
2. Запрос на аутентификацию
Поставщик услуг (LinkedIn) перенаправляет пользователя к поставщику удостоверений (Google) с запросом на аутентификацию.
3. Проверка активной сессии
Получив запрос, поставщик удостоверений (Google) проверяет наличие активной сессии. Если она не найдена, запрашивается аутентификация.
4. Пользователь отправляет учётные данные
На этом этапе пользователь отправляет свои учётные данные (имя пользователя и пароль) поставщику удостоверений (IdP).
5. Проверка учётных данных
Поставщик удостоверений сверяет предоставленные учётные данные с каталогом пользователей (базой данных). Если учётные данные верны, IdP создаёт токен аутентификации или утверждение.
6. Поставщик удостоверений отправляет токен поставщику услуг
После создания токена или утверждения IdP отправляет его обратно поставщику услуг, подтверждая личность пользователя. Теперь пользователь аутентифицирован и может получить доступ к поставщику услуг (LinkedIn).
7. Доступ предоставлен с использованием существующей сессии
Поскольку поставщик удостоверений установил сессию, при попытке пользователя получить доступ к другому поставщику услуг (например, GitHub) ему не нужно повторно вводить свои учётные данные. Будущие поставщики услуг будут запрашивать аутентификацию у поставщика удостоверений, распознавать существующую сессию и предоставлять пользователю доступ на основе ранее подтверждённой сессии.
Рабочие процессы SSO, подобные описанному выше, работают на протоколах SSO — наборе правил, которые регулируют взаимодействие и доверие между IdP и SP. Распространённые протоколы включают язык разметки утверждений безопасности (SAML), OpenID Connect и OAuth.
Post #1886
1.84K
- 👍 5
- 🥰 1
- 👏 1