Работа по протоколу в рамках определенного idP
Аутентификация через SSO
Со стороны пользователя:
- При переходе по URL-адресу любой страницы SMP без аутентификации (кроме прямого URL страницы входа) открывается страница для аутентификации со стороны IdP и производится запрос аутентификации пользователя в idP с перечислением параметров, которые в дальнейшем будут использоваться SMP для идентификации пользователя.
-
При получении ответа со стороны IdP, SMP парсит его, определяет атрибуты и их значения, по которым искать сотрудника и выполняет поиск пользователя по указанным атрибутам и точному соответствию значений:
- Если не найдено ни одного сотрудника, то на странице входа в систему отображается сообщение: "Невозможно войти в систему. Учетная запись не найдена, обратитесь к администратору." Аутентификации пользователя не происходит.
-
Если найдено более одного сотрудника, то на странице входа в систему отображается сообщение: "Невозможно войти в систему. Найдено больше одной учетной записи, обратитесь к администратору." Аутентификации пользователя не происходит.
В подсчете количества сотрудников не участвуют архивные сотрудники. Архивные сотрудники пропускаются при попытке аутентификации.
- Если найден ровно один сотрудник, то отрабатывают все стандартные проверки при аутентификации пользователя.
- Если при поиске сотрудника возникла прочая ошибка, то на странице входа в систему отображается соответствующее сообщение об ошибке. Аутентификации пользователя не происходит.
- При успешной аутентификации происходит переход на страницу SMP, к которой изначально обращался пользователь.
При переходе по прямому URL страницы входа (${baseurl}/sd и ${baseurl}/sd/index.jsp) аутентификация через SSO не отрабатывает.
Обработка прерывания сессии в SMP при инициации прерывания сессии со стороны IdP
SMP слушает по определенному URL запросы на прерывание сессий пользователей, приходящие со стороны IdP:
-
Если со стороны IdP пришел запрос про прерывание сессии пользователя, то SMP:
- Выполняет попытку разрыва сессии указанного пользователя.
- Пишет сообщение об ошибке в лог, если определить пользователя не удалось.
-
После разрыва сессии пользователя, происходит переход на страницу входа в систему.
Прозрачная аутентификация через провайдеров SSO не отрабатывает.
Отправка сообщения в IdP при прерывании сессии со стороны SMP
Если прерывается сессия пользователя аутентифицированного через SSO, то:
-
После разрыва сессии пользователя, происходит переход на страницу входа в систему.
Прозрачная аутентификация через провайдеров SSO не отрабатывает.
- SMP отсылает соответствующее сообщение в IdP на указанный в настройках URL. Сообщение сигнализирует о выходе пользователя из системы.