Интеграция MFASOFT SAS с PAM для OTP-аутентификации
Для входа в РАМ с помощью второго фактора аутентификации MFA ОТР настройте интеграцию Keycloak BI.ZONE PAM и MFASOFT SAS.
Для подключения Keycloak к MFASOFT SAS используется специальный плагин MFASOFT — агент для Keycloak.
Предварительные условия
Перед тем, как настраивать интеграцию убедитесь, что:
версия Keycloak — не ниже
21, в поставке BI.ZONE PAM версия26;версия плагина MFASOFT —
mfasoft_keycloak_v26-1.11.140325.jarили выше.
Шаг 1. Установка плагина в Keycloak
Удалите ранее установленный JAR-файл в каталоге
${kc.home.dir}/providers.Скопируйте обновленный JAR-файл с агентом.
Выполните сборку с помощью команды
${kc.home.dir}/bin/kc.sh build.Перезапустите Keycloak с помощью команды
systemctl restart keycloak. После обновления все параметры конфигурации останутся прежними.С помощью Dockerfile выполните:
FROM nexus.dev1.pam.bi.zone/pam2/auth:26.5.7-1 COPY —chown=1000:0 ./keycloak-realm-* /opt/keycloak/providers COPY —chown=1000:0 ./dist_keycloak/keycloak-theme-for-kc-all-other-versions.jar /opt/keycloak/providers/pam-theme.jar COPY —chown=1000:0 ./mfasoft_keycloak_v26-1.11.140325.jar /opt/keycloak/providers/mfasoft_keycloak_v26-1.11.140325.jarПосле успешной установки, проверьте наличие нового аутентификатора:
Откройте Keycloak Admin Console.
В правом верхнем углу нажмите на профиль и выберите Realm info.
Перейдите на вкладку Provider info.

Перезапустите Keycloak и убедитесь, что на вкладке Provider Info в блоке authenticator есть пункт mfasoft-authenticator.

Шаг 2. Настройка подключения Keycloak к MFASOFT SAS
Перейдите к узлу Configure → Authentication. В свойствах потока browser выберите Duplicate.

Указать параметры:
Name – MFASOFT-OTP PAM,
Description – MFASOFT 2FA OTP.
Нажмите Duplicate.

Откройте созданный поток MFASOFT-OTP PAM и найдите в нем MFASOFT-OTP PAM forms.
Нажмите + и выберите Add execution.

Найдите с помощью поиска MFASOFT, выберите его и нажмите Add.

Откройте настройки элемента MFASOFT и заполните поля согласно таблице ниже.
Настройка выполняется параллельно вместе с настройкой в панели администрирования MFASOFT. Подробнее — Шаг 3. Настройка подключения MFASOFT SAS к Keycloak.
После заполнения всех полей, нажмите Save.
Для элемента потока MFASOFT выберите тип Required.

Шаг 3. Настройка подключения MFASOFT SAS к Keycloak
Настройка выполняется параллельно с настройкой потока в Keycloak в Шаг 2. Настройка подключения Keycloak к MFASOFT SAS.
Войдите в консоль администрирования MFASOFT и перейдите на вкладку Виртуальные серверы.
Откройте созданный сервер аутентификации.

Перейдите на вкладку Настройки и выберите Настройки Keycloak и открыть настройки Keycloak.

Нажмите Добавить и укажите имя узла, например, BI.ZONE PAM. Сохраните узел.
Скопируйте GUID и вставить его в GUID Realm SAS в полях конфигурации MFASOFT плагина.

В настройках виртуального сервера откройте Узлы аутентификации и нажмите Добавить.

Укажите имя узла из настроек в Keycloak и IP-адрес подсети Keycloak.

Шаг 4. Создание пользователя в консоли MFASOFT SAS
В консоли администрирования откройте виртуальный сервер и перейдите на вкладку Пользователи.
Откройте Создание пользователей. Заполните обязательные параметры и нажмите Добавить.

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

Выберите Тип токена — Программный (ручная активация) и нажмите Выдать токен.

После удаления тестового пользователя, выданная лицензия вернется
На указанную почту придет сообщение со ссылкой для активации токена. Активируйте токен в приложении-аутентификаторе.
Шаг 5. Создание тестового пользователя в Keycloak
В Keycloak откройте раздел Users и нажмите Create new user.

В форме создания:
Email verified — выберите On.
Username и Email — укажите аналогично тестовому пользователю из консоли администрирования MFASOFT.

Нажмите Create.
Откройте вкладку Credentials и нажмите Set password.

Задайте пароль пользователя. Для Temporary выберите Off и нажмите Save.

Шаг 6. Проверка второго фактора в Keycloak
Перейдите к узлу Configure → Authentication.
В свойствах элемента MFASOFT-OTP PAM выберите Bind flow.

Eсли не удастся войти по MFASOFT OTP , в свойствах browser flow выберите Bind flow — настройка аутентификации в Keycloak вернется к стандартному входу по первому фактору.
В открывшемся окне нажмите Save.
Скопируйте адрес Keycloak из адресной строки.

Не закрывая текущие вкладки, откройте окно браузера в режиме инкогнито. Вставьте в адресную строку адрес Keycloak.
Введите логин и пароль от учетной записи. Убедитесь, что система запрашивает второй фактор.

Вернитесь в окно с потоком аутентификации. В свойствах элемента browser flow выберите Bind flow — настройка аутентификации в Keycloak вернется к стандартному входу по первому фактору.
Шаг 7. Создание тестового пользователя в РАМ
В РАМ Перейдите в раздел Пользователи и нажмите Создать.

Заполните обязательные поля. Логин и Электронная почта должны быть аналогичны данным тестового пользователя в Keycloak.

Нажмите Создать.
Шаг 8. Настройка подключения для входа в РАМ
В Keycloak откройте раздел Manage и выберите Clients.
На вкладке Clients list найдите и откройте web-site.

Перейдите на вкладку Adwanced.
В блоке Authentication flow overrides для Browser Flow выберите созданный поток MFASOFT-OTP PAM. Сохраните изменения.

Чтобы отключить второй фактор при входе в РАМ, в Browser Flow выберите flow Choose — настройки аутентификации в РАМ вернется к стандартному входу по первому фактору.
Шаг 9. Проверка входа в РАМ и аудит в консоли MFASOFT
Откройте страницу аутентификации в PAM.
Введите логин и пароль от тестовой учетной записи. Убедитесь, что система запрашивает второй фактор.

В консоли MFASOFT SAS перейдите на вкладку Виртуальные серверы → Аудит.
Проверьте события успешной и неуспешной аутентификации в РАМ.

Настройка аутентификации с использованием второго фактора в PAM выполнена.