Indeed IIS Extension
С помощью Indeed IIS Extension (IIS Extension) вы можете настроить двухфакторную аутентификацию в веб-приложениях, использующих проверку подлинности с помощью форм (Forms Authentication) и развернутых на платформе Microsoft Internet Information Services (IIS).
Двухфакторная аутентификация поддерживается только для приложений, использующих проверку подлинности с помощью форм (Forms Authentication).
Двухфакторная аутентификация реализована с помощью аутентификации по доменному паролю и по второму фактору — одноразовому паролю или push-уведомлению в приложении Indeed Key.
В IIS Extension вы можете выполнить аутентификацию по следующим аутентификаторам:
- мобильное приложение Indeed Key (только в режиме push-уведомлений с подтверждением входа),
- Telegram Provider (в режиме отправки одноразовых паролей и push-уведомлений с подтверждением входа),
- Email OTP,
- SMS OTP,
- Software OTP,
- Passcode,
- Hardware TOTP,
- Hardware HOTP.
Примеры внедрения IIS Extension:
- Настройка однофакторной и двухфакторной аутентификации в Remote Desktop Web Access (RDWeb) с помощью Indeed IIS Extension
- Настройка OWA через 1FA в ActiveSync с помощью Indeed-ID IIS Extension
Файлы для установки
Файл для установки IIS Extension расположен в каталоге indeed AM <Номер версии>\Indeed AM IIS Extension\<Номер версии>\:
- Indeed.AM.IIS.Extension-<номер версии>.x64.ru-ru.msi — пакет для установки Indeed AM IIS Extension.
Установка и настройка IIS Extension
Перед установкой и настройкой IIS Extension выполните предварительные действия:
- установите Indeed AM Windows Password Provider на сервер Indeed AM;
- при использовании соединения по протоколу HTTPS выполните установку клиентского сертификата на каждый сервер Indeed AM.
Выполните установку IIS Extension через запуск пакета для установки. При необходимости вы можете изменить папку для установки.
В разделе HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\SrvLocator2 измените следующие параметры:
В параметре
ServerUrlBase
укажите URL вашего сервера Indeed AM.Важно!В настройках приложения URL не должен содержать косую черту (/) в конце адреса.
В параметре
IsIgnoreCertErrors
укажите значение 0 или 1. Этот параметр предназначен для проверки сертификата сервера Indeed, при значении 1 ошибки сертификата игнорируются.
В разделе HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID в ключе
IISHTTPModule
создайте следующие параметры:Строковый параметр
LSUrl
. В данном параметре указывается URL вашего Log Server.Важно!В настройках приложения URL не должен содержать косую черту (/) в конце адреса.
Строковый параметр
ProviderId
. Это необязательный параметр. Указывается идентификатор провайдера, который станет провайдером по умолчанию при первом входе.ProviderId может иметь следующие значения:- SMS OTP {EBB6F3FA-A400-45F4-853A-D517D89AC2A3}
- Email OTP {093F612B-727E-44E7-9C95-095F07CBB94B}
- Passcode {F696F05D-5466-42b4-BF52-21BEE1CB9529}
- Software OTP {0FA7FDB4-3652-4B55-B0C0-469A1E9D31F0}
- HOTP Provider {AD3FBA95-AE99-4773-93A3-6530A29C7556}
- TOTP Provider {CEB3FEAF-86ED-4A5A-BD3F-6A7B6E60CA05}
- Indeed Key (только в режиме push-уведомлений) {DEEF0CB8-AD2F-4B89-964A-B6C7ECA80C68}
- Telegram Provider {CA4645CC-5896-485E-A6CA-011FCC20DF1D}
Настройка IIS
В этой инструкции рассмотрен пример настройки для Exchange 2016.
Откройте в Диспетчере служб IIS (IIS Manager) приложение (для Outlook Web Access — это owa), которое будет использовать IIS Extension, и перейдите в раздел Модули (Modules).
В меню Действия (Actions) нажмите Выполняется настройка собственных модулей (Configure Native Modules), выберите модули Indeed и нажмите ОK.
Интеграция IIS Extension с бизнес-приложением
Двухфакторная аутентификация настраивается отдельно для каждого целевого приложения.
В процессе настройки необходимо в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule создать ключ с именем приложения или сайта в IIS (может иметь произвольное значение). В этом ключе создать следующие параметры и определить их значения:
AuthCookie
— строковый параметр. Название cookie, которое используется для аутентификации в целевом приложении. Определяется экспериментальным путем для каждого приложения. Значение параметра можно получить из консоли F12 IE Developer Toolbar, выполнив следующие действия:В разделе Сеть (Network) запустите Сбор сетевого трафика (Enable network traffic capturing).
Выполните аутентификацию в приложении.
Перейдите в раздел Подробности (Details) на вкладку Cookie (Cookies).
Искомое значение указано в столбце Ключ (Key).
isMFAEnabled
— параметр типа DWORD. Включение двухфакторной аутентификации.LoginURL
— строковый параметр. Относительный URL, на который происходит POST-отправка данных формы входа приложения. Должен начинаться с косой черты (/). URL указывается относительно целевого сайта.MatchTargetRedirect
— DWORD параметр. При значении 1 страница для ввода второго фактора отображается до перехода на основную страницу. Целевая страница не сохраняется в буфере, после ввода второго фактора происходит переход на основную страницу (параметр:TargetURL
).OTPURL
— строковый параметр. Альтернативный URL для отправки данных формы аутентификации Indeed второго фактора. По умолчанию данные формы отправляются на тот же URL, что и данные формы целевого приложения. Их перехватывает модуль IIS и подменяет на оригинальные данные, если аутентификация Indeed прошла успешно, или же не подменяет их, если аутентификация Indeed не прошла и целевое приложение отображает собственную ошибку аутентификации. Значение необходимо использовать, если целевое приложение не трактует данные формы Indeed как ошибочные для аутентификации или необходимо явным образом демонстрировать ошибки аутентификации Indeed пользователю. Таким образом, значение можно оставить пустым.PasswordField
— строковый параметр. Значение атрибутаname
поля пароля формы входа приложения.LoginReferer
— строковый параметр. Позволяет разделить запросы от приложений, которые используют одну и ту же страницу входа. Создайте параметр с уникальным значением для каждого приложения.Важно!Если адрес сервера соответствует имени приложения, источник запроса для страницы входа будет содержать это имя приложения, даже если вы установите разные значения LoginReferer.
Например, адрес сервера ecp.indeed.local. Вы настроили два LoginReferer — %2fowa и %2fecp. Страница входа и для приложения OWA, и для приложения ECP будет содержать часть имени сервера %2fecp.indeed.local.
Для решения этой проблемы в LoginReferer укажите:
- для OWA: %2fecp.indeed.local%2fowa
- для ECP: %2fecp.indeed.local%2fecp
RedirectToTarget
— параметр типа DWORD. Переход на целевую страницу.TargetURL
— строковый параметр. URL целевой страницы, на которую пользователь попадает после аутентификации в приложении.Важно!Для Exchange 2013 и 2016 указывается /owa (без завершающей косой черты /), для Exchange 2010 указывается /owa/ (с завершающей косой чертой /).
UsernameField
— строковый параметр. Значение атрибутаname
поля имени пользователя формы входа приложения.
Значения всех параметров: LoginURL, PasswordField,
UsernameField
— содержатся в форме аутентификации целевого приложения и
могут быть получены, например при помощи инструмента Internet Explorer
F12 Developer Tools.
В реестре для приложения OWA необходимо отключить обычную проверку подлинности (Basic authentication). Создайте параметр типа DWORD IsBasicDisabled
со значением 1 по следующиему пути:
HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule\IISConfig\owa.
Отключение запроса второго фактора
Вы можете отменить запрос второго фактора аутентификации для пользователей, которые выполняют вход из доверенной сети.
Эту настройку можно указать глобально для всех приложений в рамках одной установки IIS Extension, либо только для определенного приложения. Глобальная настройка необходима, когда в приложениях есть пересекающиеся доверенные сети.
Если вы хотите переопределить существующую глобальную настройку для определенного приложения или сайта, продублируйте настройку с другими сетями в ключе с именем сайта или приложения.
Чтобы отключить запрос второго фактора, выполните следующие действия:
- Если вам нужна глобальная настройка, в реестре в
папке HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule
добавьте параметр типа REG_SZ с именем
bypassNetworks
и укажите через запятую IP-адреса с маской подсети (поддерживаются адреса IPv4 и IPv6). - Если вы хотите указать доверенные сети для определенного приложения
или сайта или переопределить глобальную настройку, в ключе
iisconfig
создайте новый ключ с точным именем сайта или приложения IIS и укажите через запятую IP-адреса с маской подсети (поддерживаются адреса IPv4 и IPv6).
Максимально вы можете указать 252 адреса.
Смена языка
Для настройки локализации на машине с установленным IIS Extension в разделе реестра
HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule создайте ключ
LanguageId
(с типом DWORD).
Варианты значений (десятичные):
- 1033 — English;
- 1049 — русский.
По умолчанию указана локализация устанавливаемого дистрибутива.
Настройка хранения сессии в кеше
При кратковременных разрывах подключения к серверу Indeed Access Manager вы можете настроить период, в течение которого сессию можно будет использовать повторно.
В течение заданного периода сессия хранится в кеше и может быть повторно использована при запросе на новое соединение с сервером. При этом проверка работоспособности сервера повторно не происходит, вместо этого используется закешированный результат проверки.
По истечении периода хранения сессия завершается. По новому запросу на соединение с сервером создается новая сессия.
Раздел | Параметр | Тип | Значение по умолчанию |
---|---|---|---|
SrvLocator2 | SessionHoldPeriodMs | DWORD | 3 минуты |
Варианты написания доменного имени
В IIS Extension не поддерживается настройка входа в OWA (Outlook Web Access) только по имени пользователя (User name only).
Для корректной работы IIS Extension доменное имя необходимо записывать в следующих форматах:
- SAM: домен в виде NetBIOS — indeed\user;
- UPN: домен в виде DNS — user@indeed.local.
При включенной нормализация имен
(HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule, ключ типа DWORD
NameTranslationDisabled=0
), авторизоваться будет невозможно, если
доменное имя введено нестандартным способом:
- SAM: домен в виде DNS вместо NetBIOS — indeed.local/user;
- UPN: домен в виде NetBIOS вместо DNS — user@indeed.
Пример работы модуля
Откройте приложение OWA и введите доменный логин/пароль.
После корректного ввода появится окно с запросом второго фактора.
После успешного ввода одноразового пароля откроется приложение.