Агенты
Для подключения целевых ресурсов к сервису MFA используются промежуточные узлы — агенты аутентификации. Агент может быть встроен как в целевой ресурс, так и в сервис централизованной аутентификации, от которых этот агент получает имя пользователя и введенный одноразовый пароль.
Узел аутентификации отправляет учетные данные пользователя на сервер аутентификации через Web API методом POST по протоколу HTTPS. Узлы аутентификации и подписчики сервиса MFA сопоставляются на основе IP-адреса, указанного в консоли управления. Подписчики самостоятельно ведут свой список узлов аутентификации.
FreeRADIUS
Для интеграции целевых ресурсов с сервисом MFA по протоколу RADIUS используется агент для ПО FreeRADIUS. Этот агент вместе с сервером FreeRADIUS выполняет функцию шлюза, через который запросы от целевых ресурсов попадают на сервер аутентификации, а ответы от него — к целевым ресурсам.
При интеграции целевых ресурсов по протоколу RADIUS после успешной аутентификации агент может возвращать атрибуты RADIUS. Эта функциональность нужна для поддержки расширенных возможностей аутентификации и авторизации, например динамических групп, членство в которых определяется значением возвращаемого атрибута.
Чтобы распределить поток запросов к нескольким агентам RADIUS, можно использовать функцию списка серверов RADIUS в клиентах, при этом запросы будут отправляться на первый в списке сервер RADIUS или распределяться статистически в нужных пропорциях, а при отказе или критической перегрузке основного сервера перенаправляться на резервный. Серверы RADIUS после обработки запроса на аутентификацию не хранят никакой информации о статусе, поэтому привязывать целевые ресурсы к определенным шлюзам RADIUS не требуется.
Чтобы обеспечить миграцию со стороннего решения для аутентификации в сервис MFA компании «Индид Облако», шлюз RADIUS поддерживает режим миграции. В режиме миграции, если сервер аутентификации доступен и в его базе есть учетная запись пользователя, но у нее нет токенов, то при входе под такой учетной записью шлюз вместо того, чтобы сразу сообщить о неуспешной аутентификации, отправляет по протоколу RADIUS повторный запрос на аутентификацию к стороннему решению.
Подробнее о настройке агента FreeRADIUS читайте в разделе Установка и конфигурирование.
LDAP-прокси
Чтобы интегрировать целевые ресурсы, использующие LDAP-аутентификацию, с сервисом MFA используется агент, выполняющий функции посредника (прокси). Этот агент принимает от целевого ресурса запросы на привязку по протоколу LDAP (или LDAPS) и транслирует их на LDAP-сервер.
Если привязка прошла успешно, агент через Web API отправляет на сервер аутентификации одноразовый пароль или запрашивает отправку push-уведомления. Если одноразовый пароль верен или пользователь подтвердит вход в push-уведомлении, то LDAP-прокси отправляет на целевой ресурс подтверждение успешной привязки. Если же LDAP-пароль или одноразовый пароль неверны или пользователь не подтвердит вход по push-уведомлению, то целевой ресурс получит сообщение, что учетные данные пользователя неверны.
Так как целевые ресурсы, использующие LDAP-аутентификацию, предлагают пользователю только одно поле для ввода пароля, при интеграции через LDAP используются push-уведомления, либо одноразовый пароль или запрос на push-уведомление указывается вместе с паролем LDAP в одном поле. Так как аутентификация одноэтапная, то при интеграции через LDAP токены типа «запрос-ответ» не поддерживаются.
Чтобы обеспечить отказоустойчивость интеграции через LDAP, в списке серверов LDAP в клиентах можно указать несколько LDAP-прокси, причем на разных клиентах они могут следовать в разном порядке. При этом запросы будут в зависимости от логики клиента LDAP в целевом ресурсе отправляться на первый в списке прокси или распределяться статистически в нужных пропорциях, а при его отказе или критической перегрузке перенаправляться на резервный. Агенты LDAP-прокси после обработки запроса на аутентификацию не хранят никакой информации о статусе, поэтому привязывать целевые ресурсы к определенным LDAP-прокси не требуется.
Подробнее о настройке агента LDAP-прокси читайте в разделе Установка и конфигурирование.
ADFS
Чтобы интегрировать целевые ресурсы, использующие механизм единого входа (Single Sign On, SSO) на базе Microsoft Active Directory Federation Services (ADFS), используется агент для ADFS. Агент представляет собой дополнительный плагин для сервера ADFS, который после установки и регистрации становится доступен в консоли администрирования ADFS, что позволяет настроить как сам плагин, так и логику подключения второго фактора аутентификации.
Когда пользователь заходит на страницу входа целевого сервиса, сервис перенаправляет его на страницу аутентификации сервиса ADFS. На ней пользователь вводит свои логин и доменный пароль, а если политиками требуется двухфакторная аутентификация, то сервис показывает окно для ввода второго фактора. Введенное в это окно значение отправляется на сервер аутентификации. Если проверка пройдена, то пользователь перенаправляется на стартовую страницу целевого сервиса.
Подробнее о настройке агента ADFS читайте в разделе Агент ADFS.
Web API
В сервисе MFA реализован интерфейс для обработки запросов на аутентификацию — Web API. Через этот интерфейс можно интегрировать с сервером аутентификации целевое приложение, добавив в него программный код, реализующий функции клиента аутентификации. В этом случае приложение, которому нужно проверить введенный в него одноразовый пароль, будет вызывать этот код, а код — устанавливать с сервером аутентификации защищенное соединение и передавать по нему введенные пользователем данные для проверки. Такой способ интеграции подходит, если доступен исходный код приложения и его можно модифицировать.
Подробнее о настройке Web API читайте в разделе Web API.
Синхронизация LDAP
Для извлечения информации из каталога LDAP используется агент синхронизации LDAP. Этот агент периодически подключается к каталогу, скачивает из него нужные свойства выбранных для синхронизации объектов и сравнивает их со своей локальной базой данных, в которой хранится текущая информация о синхронизированных объектах в базе сервиса MFA. Если с этими объектами произошли любые изменения (создание, удаление, модификация), то локальная база агента обновляется, и изменения в ней асинхронно отправляются в базу данных сервера аутентификации через модуль синхронизации LDAP. Такие события, как подключение к серверам каталога, ошибки при доступе к объектам LDAP и при записи их в базу данных сервиса MFA, регистрируются в локальном журнале агента. Для подключения к каталогу агент может использовать как базовый протокол LDAP, так и LDAP через SSL (LDAPS).
Подробнее о настройке агента синхронизации читайте в разделе Установка и конфигурирование.
Keycloak
Чтобы интегрировать целевые ресурсы с сервисом MFA по протоколам SAML (Security Assertion Markup Language) и OIDC (OpenID Connect), можно использовать агент для открытого ПО Keycloak. Этот агент представляет собой дополнительный плагин для сервера Keycloak, который после установки и настройки становится доступен в консоли администрирования Keycloak, что позволяет настроить как сам плагин, так и логику подключения второго фактора аутентификации.
Когда пользователь заходит на страницу входа целевого сервиса, сервис перенаправляет его на страницу аутентификации Keycloak. На ней пользователь вводит свои логин и доменный пароль, а если политиками требуется двухфакторная аутентификация, то сервис показывает окно для ввода второго фактора. Введенное в это окно значение отправляется на сервер аутентификации сервиса MFA. Если проверка пройдена, то пользователя перенаправляют на стартовую страницу целевого сервиса.
Подробнее о настройке Keycloak читайте в разделе Агент Keycloak.
Syslog
Агент syslog предназначен для отправки событий на сервер syslog. Он принимает сообщения от сервера аутентификации по протоколу HTTPS и отправляет их на сервер регистрации событий.
Подробнее о настройке читайте в разделе Агент Syslog.