# Двухфакторная аутентификация для Keycloak ## Описание При входе через Keycloak пользователи проходят двухэтапную аутентификацию: вводят логин и пароль (первый фактор) и подтверждают вход вторым фактором. Keycloak выполняет проверку первого фактора через внутреннюю базу пользователей, LDAP или Active Directory, после чего инициирует второй фактор через плагин Simple2FA. Схема работы: 1. Пользователь открывает корпоративное приложение. 2. Keycloak запрашивает логин и пароль (первый фактор). 3. Keycloak проверяет корректность учётных данных через внутреннюю базу пользователей или Active Directory. 4. При успешной проверке первого фактора плагин Simple2FA отправляет запрос в локальный инстанс Simple2FA. 5. Локальный инстанс запрашивает у пользователя подтверждение вторым фактором. 6. Пользователь подтверждает вход. 7. После успешной проверки пользователь получает доступ к приложению. ## Подготовка в Simple2FA Войдите в панель администратора локального инстанса, перейдите в раздел «Настройка ресурсов» и создайте новый ресурс: | Поле | Значение | | --- | --- | | Название | Keycloak (или любое удобное) | | Описание | Краткое описание ресурса | | Флаг проверки первого фактора | Отключен (первый фактор проверяется в Keycloak) | В глобальных настройках убедитесь, что указан корректный API-ключ организации для связи локального инстанса с облаком, а сам инстанс доступен с сервера Keycloak по сети. ## Настройка Keycloak **1) Установите плагин Simple2FA** - Загрузите плагин Simple2FA для Keycloak, - Скопируйте JAR-файл плагина в директорию `providers` сервера Keycloak. **2) Настройте параметры подключения** - Откройте файл конфигурации плагина, - Укажите URL локального инстанса Simple2FA, - Укажите API key ресурса, - При необходимости настройте таймауты и параметры HTTPS. **3) Перезапустите Keycloak** - После установки плагина выполните перезапуск сервера Keycloak. **4) Настройте Authentication Flow** - Откройте административную панель Keycloak, - Перейдите в раздел **Authentication → Flows**, - Создайте новый flow или скопируйте существующий browser-flow, - Добавьте шаг аутентификации Simple2FA после проверки логина и пароля, - Установите требование **Required** для шага Simple2FA. **5) Назначьте flow** - Перейдите в раздел **Authentication → Bindings**, - Назначьте созданный flow в качестве Browser Flow. ## Проверка работы - Откройте приложение, использующее Keycloak для аутентификации, - Введите логин и пароль, - Дождитесь запроса второго фактора от Simple2FA, - Подтвердите вход, - После успешной проверки доступ будет предоставлен. Результат каждой попытки входа доступен в панели администратора, в разделе [«Попытки авторизации»](../../admin/auth-attempts.md). ## Смотрите также - [Веб-приложения и 1С](index.md) - [Начало работы](../../start/index.md) - [Сценарии использования](../../start/scenarios.md)