Функциональная спецификация Blitz Identity Provider#

Технологии единого входа#

Группа функций

Функции

OpenID Connect и OAuth 2.0

RFC 6749 “The OAuth 2.0 Authorization Framework”

OpenID Connect Core 1.0

Передача атрибутов пользователя в составе id_token/access_token в JSON Web Token (JWT)

Конфигурируемый REST-сервис UserInfo, настройка возвращаемых атрибутов в зависимости от scope

RFC 7636 “Proof Key for Code Exchange by OAuth Public Clients”

RFC 7662 “OAuth 2.0 Token Introspection”

RFC 7591 “OAuth 2.0 Dynamic Client Registration Protocol”

RFC 7592 “OAuth 2.0 Dynamic Client Registration Management Protocol”

RFC 8252 “OAuth 2.0 for Native Apps”

RFC 8414 “OAuth 2.0 Authorization Server Metadata”

OpenID Connect RP-Initiated Logout 1.0

OpenID Connect Front-Channel Logout 1.0

OpenID Connect Back-Channel Logout 1.0

SAML

SAML Web Browser SSO Profile

SAML Single Logout Profile

RADIUS

RFC 2865 «Remote Authentication Dial In User Service (RADIUS)»

WS-Federation

WS-Federation (для подключения Microsoft-приложений)

Proxy SSO

Подключения веб-приложений, получающих состояние сессии из HTTP-заголовков и cookies

Поддержка возможности заполнения за пользователя логина/пароля от учетной записи в размещенное за proxy веб-приложение, не поддерживающее стандартным образом подключения к SSO

Другое

Единый вход работает между приложениями, которые подключены к IDP с использованием любых поддерживаемых технологий (например, SSO между OpenID Connect и SAML-приложениями)

Поддержка SSO-входа с использованием Kerberos SSO

Поддержка единого SSO с приложениями IBM, использующими для единого входа Ltpa2Token

Идентификация и аутентификация#

Группа функций

Функции

Вход по логину и паролю

Проверка логина/пароля при аутентификации

Возможность в качестве логина одновременно использовать несколько сущностей (телефон, email, логин) и вводить логин в разных форматах (например, вводить телефон как +7…, 8…, с разным вариантом ввода скобок, дефисов, пробелов)

Запоминание логина, если пользователь ранее уже входил с этого устройства

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

Обработка события «пароль требует смены» при входе. Возможности сменить пароль в момент входа

Проверка соответствия пароля действующей парольной политике при входе. Рекомендация сменить пароль

Встроенная защита от подбора пароля (перебор паролей на одну учетную запись) и подбора логина (попытка подбора пароля на набор учетных записей):

  • проверка CAPTCHA (reCAPTCHA или иной сервис, выбранный Заказчиком)

  • временное блокирование входа по паролю учетной записи при выявленных попытках перебора

  • замедление входа пользователя (задержка входа, решение браузером вычислительно сложной задачи – Proof of Work)

Предупреждение пользователя о попытке входа с паролем, который был недавно изменен

Вход на основе сеанса

Идентификация пользователя на основе результата входа в домен (Kerberos)

Возможность подключения системы входа одновременно к нескольким доменам и обеспечения сквозного входа пользователей из разных доменов

Возможность настройки, чтобы режим входа на основе сеанса ОС применялся только при входе из внутренних сетей и с ПК, но не применялся при входе с мобильных приложений и из вне рабочей сети

Вход через аккаунт социальной сети / стороннего поставщика идентификации

Социальные сети и внешние поставщики идентификации, через которые поддерживается возможность входа пользователей без необходимости доработок и написания коннекторов: Яндекс, ВКонтакте, Одноклассники, Mail ID, VK ID, Apple ID, Google, Facebook [1].

Вход через ЕСИА в режиме физического лица

Вход через ЕСИА в режиме представителя организации (с выбором организации при входе)

Вход через ЕСИА в режиме цифрового профиля

Вход через банки Сбер ID, Tinkoff ID, ВТБ ID, СберБизнес ID, Альфа ID

Вход через Mos ID (СУДИР)

Вход через внешний поставщик идентификации с поддержкой OIDC

Вход через внешний поставщик идентификации с поддержкой SAML

Вход через СУДИС

Сопоставление/регистрация учетной записи в процессе первичного входа через социальную сеть

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

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

Возможность программирования собственного алгоритма привязки учетных записей и сопоставления атрибутов

Возможность сохранять маркеры доступа из внешних поставщиков

Вход на основе запомненного устройства

Автоматическая идентификация пользователя, если он уже входил с этого устройства и согласился запомнить свой вход

Возможность пользователю отследить, на каких устройствах запомнен вход, и выйти с этих устройств

Автоматический выход с запомненных устройств при смене/восстановлении пароля пользователем

Автоматическая идентификация по свойствам сессии

Автоматическая идентификация пользователя по свойствам сессии. Поддерживаются все свойства. сессии, которые могут быть определены Заказчиком и предоставлены в Blitz Identity Provider. Гибкая настройка метода и полная кастомизация текстов интерфейса.

Вход с помощью WebAuthn, Passkey, FIDO2

Вход с помощью платформо-независимых ключей безопасности FIDO2

Вход с помощью платформо-зависимых ключей безопасности Passkey / FIDO2 – Windows Hello (пин-код, отпечаток пальца), Passkey, пароль или Touch ID от MacBook, Passkey, Face ID или Touch ID от смартфона или планшета с iOS или Android

Вход с помощью смарт-карты / USB ключа

Вход с помощью средств квалифицированной электронной подписи

Поддерживаемые средства электронной подписи: КриптоПро CSP 3.9 и выше, VipNet CSP 4.2, Signal-COM CSP 3.0, Рутокен, JaCarta, ISBC ESMART, SafeNet eToken

Поддерживаемые пользовательские ОС: Windows 8.1/10/11, macOS 10.13/10.14/10.15/11/12/13, Linux Debian 9, Mint 19, Ubuntu 18, Astra Linux 1.7, Red OS 7.3

Поддерживаемые браузеры: Internet Explorer 11, Chrome, Firefox, Yandex, Спутник

Возможность сопоставления/регистрации учетных записей в процессе первичного входа на основе данных из сертификата квалифицированной электронной подписи

Возможность проверки действительности подписи/сертификата встроенными возможностями ПО

Возможность проверки действительности подписи/сертификата через вызов внешнего сервиса проверки

Двухфакторная аутентификация

Подтверждение входа разовым паролем из SMS (SMS-шлюз предоставляет Заказчик)

Подтверждение входа разовым паролем из email

Подтверждение входа разовым паролем TOTP-приложения (RFC 6238 “TOTP: Time-Based One-Time Password Algorithm”)

Подтверждение входа разовым паролем из аппаратного брелока. Поддержка брелоков HOTP (RFC 4226 “HOTP: An HMAC-Based One-Time Password Algorithm”). Брелоки предоставляет Заказчик

Подтверждение входа ключом безопасности WebAuthn, Passkey, FIDO2

Подтверждение входа ключом безопасности U2F

Подтверждения входа разовым паролем в push-уведомлении в мобильном приложение Заказчика (сервис для отправки push и мобильное приложение предоставляет Заказчик)

Подтверждение входа по входящему звонку (Flash Call)

Другое

Возможность Заказчику самостоятельно добавить собственный метод аутентификации

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

Предоставление API, позволяющее мобильным приложениям зарегистрировать событие входа и получить маркеры безопасности при входах с использованием ПИН-кода, Touch ID, Face ID

Блокирование учетных записей в случае длительной неактивности

Запрет на повторное использование идентификатора удаленной учетной записи в течение установленного времени

Возможность анализа геоданных пользователя

Логаут#

Группа функций

Функции

Логаут

Завершение пользовательской сессии при инициировании логаута пользователем

Завершение пользовательской сессии при смене пароля пользователя в другой сессии или при сбросе/восстановлении пароля пользователю

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

Информирование приложений о произведенном едином логауте через браузер (front channel)

Информирование приложений о произведенном едином логауте через сервер (back channel)

Контроль доступа#

Группа функций

Функции

Контроль доступа

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

Проверка правил доступа при вызове приложениями защищаемых REST-сервисов через шлюз безопасности Blitz Keeper (API Security Gateway)

Управление аккаунтом#

Группа функций

Функции

Регистрация

Настраиваемое веб-приложение самостоятельной регистрации пользователей. Можно настроить набор атрибутов, заполняемых пользователем при регистрации, требования к подтверждению email/телефона, настроить внешний вид страницы регистрации, вызов сервисов проверки Заказчика

Можно задать различные настройки веб-приложения самостоятельной регистрации пользователя для различных сценариев вызова регистрации

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

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

Проверка CAPTCHA (reCAPTCHA или иной сервис, выбранный Заказчиком)

Настройки безопасности учетной записи

Веб-приложение, позволяющее пользователю управлять настройками безопасности его учетной записи:

  • возможность самостоятельно сменить пароль;

  • возможность редактирования некоторых атрибутов, в т.ч. возможность редактирования телефона с подтверждением через код по SMS и возможность редактирования email с подтверждением через код/ссылку по email;

  • возможность настроить двухфакторную аутентификацию для своей учетной записи;

  • возможность посмотреть/отредактировать список запомненных устройств, привязанных учетных записей внешних поставщиков входа;

  • возможность посмотреть события безопасности со своей учетной записью.

Предоставление API для возможности встраивания всех вышеперечисленных функций управления настройками безопасности учетной записи в стороннее веб-приложение

Восстановление забытого пароля

Веб-приложения, позволяющего восстановить забытый пароль, с подтверждением email или телефона

Дополнительные проверки при восстановлении пароля от учетной записи, для которой включена двухфакторная аутентификация

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

Проверка CAPTCHA (reCAPTCHA или иной сервис, выбранный Заказчиком)

Действия с учетной записью в момент входа

Возможность в момент входа задать номер телефона (если отсутствует) в учетной записи или подтвердить актуальность телефона (если наступил срок необходимости подтверждения актуальности)

Возможность в момент входа задать номер телефона (если отсутствует) в учетной записи или подтвердить актуальность телефона (если наступил срок необходимости подтверждения актуальности)

Возможность в момент входа задать адрес электронной почты (если отсутствует) в учетной записи или подтвердить актуальность адреса электронной почты (если наступил срок необходимости подтверждения актуальности)

Возможность в момент входа выпустить Passkey (настроить вход по Face ID / Touch ID)

Возможность показать пользователю объявление

Возможность запросить у пользователя согласие

Возможность запросить у пользователя заполнение текстового атрибута

Возможность в момент входа задать контрольный вопрос

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

Парольные политики

Проверка пароля на соответствие парольной политике: минимальная длина, требования к алфавиту, запрет словарных паролей, запрет повтора паролей, проверка срока действия паролей

Расширенные возможности#

Группа функций

Функции

Кастомизация логики работы с помощью программирования на Java

Задание правил входа пользователей в приложения посредством процедур входа и регистрации

Кастомизация операций с хранилищами данных

Мониторинг и аудит#

Группа функций

Функции

Оповещения пользователей о событиях безопасности

Оповещение пользователей о событиях безопасности с их учетными записями: вход с необычного устройства, изменение пароля (сам сменил, администратор сбросил, смена в результате восстановления пароля), привязка учетной записи социальной сети, включение/выключение двухфакторной аутентификации

Возможность настроить набор событий оповещения и тексты оповещений для SMS и для email

Регистрация событий безопасности

Регистрация успешных и неуспешных событий безопасности с учетной записью: события входа, регистрации, изменения настроек безопасности, восстановления пароля. Должны регистрироваться как действия, инициированные пользователем, так и действия, инициированные администратором

Регистрация успешных и неуспешных событий безопасности с учетной записью: события входа, регистрации, изменения настроек безопасности, восстановления пароля. Должны регистрироваться как действия, инициированные пользователем, так и действия, инициированные администратором

Сопоставление IP-адресам геоданных в событиях и уведомлениях (БД в формате mmdb с геоданными предоставляет Заказчик)

Интерфейс администратора для поиска/просмотра событий безопасности

Запись событий безопасности: в БД, в лог-файл, в Kafka

Мониторинг

Возможность в момент входа пользователя вызывать системы сбора метрик и статистики, антифрод системы

Возможность осуществлять мониторинг компонент из внешней системы мониторинга (Zabbix и аналоги). Предоставление метрик в формате Prometheus

Шаблоны дашборда Grafana и job-задания Prometheus в поставке

Очереди

Возможность передавать в очередь RabbitMQ события, связанные с учетными записями пользователей и групп доступа

Возможность передавать в очередь Kafka события безопасности

Администрирование#

Группа функций

Функции

Администрирование

Веб-приложение администрирования:

  • задание настроек подключенных приложений (параметры приложений, разрешенные режимы взаимодействия, правила контроля доступа)

  • настройка атрибутов пользователей и сопоставление атрибутов хранилищам учетных записей

  • настройка подключения к хранилищам учетных записей на основе LDAP

  • настройка подключения к произвольным хранилищам (через предоставленный Заказчиком сервис)

  • поддержка работы одновременно с несколькими хранилищами учетных записей

  • настройка методов идентификации/аутентификации и внешних поставщиков входа

  • настройка подключения к SMTP-службе и к SMS-шлюзу

  • поддержка ролевого доступа для входа в веб-приложение администратора. Возможность для разных пользователей задать разный набор доступных действий

  • управление настройками веб-приложений регистрации, управления настройками безопасности, восстановления пароля

  • администрирование учетных записей пользователей (поиск, просмотр, управление атрибутами, настройками двухфакторной аутентификации, привязками запомненных устройств и социальных сетей, запомненных браузеров пользователя, сброс сессий, сброс пароля, блокирование/разблокирование учетной записи, управление ключами безопасности, управление членством в группах пользователей, назначение/отзыв прав доступа)

  • администрирование групп пользователей, управления членством пользователей в группах

  • настройка внешнего вида страниц входа в приложения

  • просмотр и фильтрация зарегистрированных событий безопасности

  • возможность входа в веб-приложение администрирования через SSO

Интерфейс администратора на русском и английском языках

Возможность добавления переводов на дополнительные языки