Двухфакторная аутентификация для Outlook Web Access (OWA)
Описание
При входе в Outlook Web Access (OWA) пользователи проходят двухэтапную аутентификацию: вводят логин и пароль (первый фактор) и подтверждают вход вторым фактором.
После успешной проверки логина и пароля OWA инициирует проверку второго фактора через IIS-адаптер Simple2FA.
Схема работы:
- Пользователь открывает сайт Outlook Web Access.
- OWA запрашивает логин и пароль, проверяет корректность учётных данных и создаёт пользовательскую сессию.
- IIS-адаптер Simple2FA проверяет наличие авторизованной сессии и перенаправляет пользователя на проверку второго фактора.
- Пользователь подтверждает вход.
- После успешной проверки пользователь возвращается в OWA и получает доступ к почте.
Подготовка в Simple2FA
Войдите в панель администратора локального инстанса, перейдите в раздел «Настройка ресурсов» и создайте новый ресурс:
| Поле | Значение |
|---|---|
| Название | OWA (или любое удобное) |
| Протокол | HTTPS |
| Флаг проверки первого фактора | Отключен (первый фактор проверяет OWA) |
| Использовать кеширование сессий | Включить, если необходимо, чтобы у пользователя после успешного входа не запрашивался второй фактор в течение указанного времени |
| Длительность кеша | Рекомендуемое значение — 60 минут |
В глобальных настройках убедитесь, что указан корректный API-ключ организации для связи локального инстанса с облаком.
Требования
- ОС: Windows Server 2016 или новее
- Exchange: Exchange Server 2016/2019 с Outlook Web Access
- Доступ серверов Exchange, на которые устанавливается адаптер, к бэкенду локального инстанса по HTTPS (TCP 443)
- Доступ рабочих станций пользователей к
access.simple2fa.ruпо HTTPS (TCP 443) - Корректное системное время (NTP) на серверах Exchange и на бэкенде локального инстанса
Без доступа к указанным хостам установка завершится успешно, однако двухфакторная аутентификация работать не будет.
На какие серверы Exchange устанавливать адаптер
Адаптер устанавливается на все серверы Exchange с почтовыми базами данных (mailbox-серверы).
Это связано с архитектурой Exchange: вход пользователя в OWA обрабатывает тот сервер, на котором находится активная копия базы данных его почтового ящика. Серверы клиентского доступа (прокси-серверы за балансировщиком) запросы OWA не обрабатывают, а только пересылают на нужный mailbox-сервер — установка адаптера на них не даёт эффекта, хотя и завершается без ошибок.
Если серверов с базами несколько, адаптер необходим на каждом из них: входы разных пользователей обслуживаются разными серверами, а при переключении активной копии базы (например, при обслуживании сервера в DAG) обработка входов переезжает на другой сервер.
Определить серверы для установки можно командами в Exchange Management Shell:
Get-ExchangeServer | ft Name, ServerRole, AdminDisplayVersion
Get-MailboxDatabaseCopyStatus * | ft Name, Status
Адаптер устанавливается на все серверы, где размещены копии почтовых баз.
Типичный признак того, что адаптер установлен не на те серверы: установка прошла успешно, но вход в OWA происходит без запроса второго фактора (у всех или у части пользователей), а журнал адаптера на сервере установки пуст.
Установка IIS-адаптера
Шаги установки выполняются на каждом mailbox-сервере.
1) Распакуйте дистрибутив
- Распакуйте архив на сервер Exchange.
2) Настройте install.config.ps1
Откройте файл конфигурации:
notepad install.config.ps1
Укажите параметры подключения:
$ApiUrl— адрес бэкенда локального инстанса (local-backend). Обратите внимание: это не адрес панели администратора — при установке инстанса они задаются какDOMAIN_APIиDOMAIN_ADMIN. Проверить корректность адреса можно запросом с сервера Exchange — в ответ должен вернуться статус 200:
Invoke-WebRequest -Uri "https://<адрес бэкенда локального инстанса>/health" -UseBasicParsing
$ResourceApiKey— API-ключ ресурса OWA;$UsernameMapMode— режим сопоставления пользователей (localpartилиupn).
3) Установите адаптер
Откройте PowerShell от имени администратора и выполните:
cd C:\Orbsoft2FA-Owa
Set-ExecutionPolicy -Scope Process Bypass
.\install.ps1
Повторите шаги на остальных mailbox-серверах.
Проверка работы
- Откройте страницу Outlook Web Access (OWA) в приватном окне браузера (чтобы исключить влияние ранее созданной сессии OWA)
- Введите логин и пароль Active Directory
- Дождитесь появления страницы подтверждения второго фактора Simple2FA
- Подтвердите вход
- После успешной проверки доступ к почте будет предоставлен
Результат каждой попытки входа доступен в панели администратора, в разделе «Попытки авторизации».
Диагностика
Если после установки второй фактор не запрашивается:
- Убедитесь, что адаптер установлен на всех серверах с почтовыми базами (см. раздел «На какие серверы Exchange устанавливать адаптер»). Вход конкретного пользователя обрабатывает сервер с активной копией базы его ящика — определить его можно командой
Get-Mailbox <пользователь> | ft Name, Database, ServerName. - Повторите вход в приватном окне браузера: действующая сессия OWA или кеш сессий может пропускать вход без повторного запроса фактора.
- Просмотрите журнал адаптера на сервере, обрабатывающем вход (журнал Application, источник событий
Orbsoft2FA-IIS):
$since = (Get-Date).AddHours(-1)
Get-WinEvent -FilterHashtable @{
LogName = 'Application'
ProviderName = 'Orbsoft2FA-IIS'
StartTime = $since
} | Sort-Object TimeCreated | Format-Table TimeCreated, Id, LevelDisplayName, Message -Wrap
При обращении в техническую поддержку приложите вывод журнала и значения параметров из install.config.ps1 (без API-ключа).
Удаление адаптера
Для удаления адаптера выполните:
.\uninstall.ps1