В данной статье мы рассмотрим, как настроить однофакторную или двухфакторную (2FA) аутентификацию при доступе в Remote Desktop Web Access (RDWeb) с помощью технологии аутентификации Indeed-Id. Использовать для этого мы будем модуль Indeed IIS Extension.
Что нам понадобится: 1. Сервер с установленным Remote Desktop Web Access (RDWeb) 2. Установленные и настроенные модули Indeed-Id следующих версий:
- Indeed-Id Enterprise Server версии 5.4.11 и выше
- Indeed IIS Extension версии 1.2.1 и выше
- Indeed-Id Passcode Provider версии 1.1.1 и выше (опционально)
- Indeed-Id GoogleOTP Provider (без пин) версии 1.2.0 и выше (опционально)
- Indeed-Id SMS OTP Provider (без пин) версии 1.0.14 и выше (опционально)
- Indeed-Id EMail OTP Provider версии 1.0.2 и выше (опционально)
Набор необходимых провайдеров Indeed-Id выбирается в зависимости от поставленной задачи.
Модуль Indeed IIS Extension позволяет настроить два варианта аутентификации при доступе в web-приложение Remote Desktop Web Access (RDWeb), опубликованное на сервере IIS:
1. Однофакторная аутентифкация - вместо доменного пароля в форме входа в приложение пользователь вводит свой аутентификатор в системе Indeed-Id. Данная схема работает с провайдерами Passcode и GoogleOTP (без пин).
2. Двухфакторная аутентификация (2FA) - пользователь аутентифицируется по доменному паролю, а в качестве второго фактора аутентификации в специальном окне вводит свой аутентификатор в системе Indeed-Id. Данная схема работает с провайдерами Passcode, GoogleOTP (без пин), SMS OTP (без пин), EMail OTP.
Настройка однофакторной аутентификации
1. Выполнить установку Indeed.EA.IIS.Extension.x64.msi на сервере RDWeb Access
2. Включить установленный модуль для приложения RDWeb. Для этого:
- Откройте в Диспетчере служб IIS (IIS Manager) приложение RDWeb и перейдите в раздел Модули (Modules).
- В меню Действия (Actions) нажмите Выполняется настройка собственных модулей. . . (Configure Native Modules. . . ), включите модули Indeed и нажмите ОК.
- Перезапустите сервер IIS в Диспетчере служб IIS (IIS Manager).
3. Задаем необходимые настройки в реестре. Для этого:
- Откройте редактор реестра Windows.
- Создайте в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\ ключ Indeed-ID с вложенным ключом IISHTTPModule.
- Задайте тип аутентификаторов, с которым будет работать система (при вводе пользователя строки со значением аутентификатора модуль будет работать с ним в соответствии с указанным типом). В созданном ключе IISHTTPModule создайте строковый параметр ProviderId и задайте для него значение, соответствующее используемому провайдеру:
- {F696F05D-5466-42B4-BF52-21BEE1CB9529} − для Passcode Provider
- {0FA7FDB4-3652-4B55-B0C0-469A1E9D31F0} – для GoogleOTP
Настройка для Passcode
Настройка для GoogleOTP
Таким образом мы указали, что Indeed IIS Extension будет обрабатывать все полученные аутентификаторы для всех web-приложений в соответствии указанным типом. Если необходимо настроить определенный тип аутентификатора для каждого приложения отдельно, существует более гибкая настройка. Ее мы рассмотрим в отдельной статье.
- Создайте в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule ключ с именем приложения в IIS (может иметь произвольное значение). Например: HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule\RDWeb
- В созданном ключе создайте следующие строковые параметры и определите их значения:
Параметр: LoginURL Значение: /RDWeb/Pages/en-US/login.aspx (для русскоязычной версии необходимо задать /RDWeb/Pages/ru-RU/login.aspx) Параметр: UsernameField Значение: DomainUserName Параметр: PasswordField Значение: UserPass
Настройка для англоязычной версии
Настройка для русскоязычной версии
4. Теперь при входе в RDWeb Access пользователи смогут использовать не только доменный пароль, но и обученный аутентификатор Indeed-Id (Passcode или GoogleOTP в зависимости от настройки) вместо доменного пароля.
Настройка двухфакторной аутентификации (2FA)
1. Выполнить установку Indeed.EA.IIS.Extension.x64.msi на сервере RDWeb Access
2. Включить установленный модуль для приложения RDWeb. Для этого:
- Откройте в Диспетчере служб IIS (IIS Manager) приложение RDWeb и перейдите в раздел Модули (Modules).
- В меню Действия (Actions) нажмите Выполняется настройка собственных модулей. . . (Configure Native Modules. . . ), включите модули Indeed и нажмите ОК.
- Перезапустите сервер IIS в Диспетчере служб IIS (IIS Manager).
3. Задаем необходимые настройки в реестре. Для этого:
- Откройте редактор реестра Windows.
- Создайте в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\ ключ Indeed-ID с вложенным ключом IISHTTPModule.
- Задайте тип аутентификаторов, с которым будет работать система (при вводе пользователя строки со значением аутентификатора модуль будет работать с ним в соответствии с указанным типом). В созданном ключе IISHTTPModule создайте строковый параметр ProviderId и задайте для него значение, соответствующее используемому провайдеру:
- {F696F05D-5466-42B4-BF52-21BEE1CB9529} − для Passcode Provider
- {0FA7FDB4-3652-4B55-B0C0-469A1E9D31F0} – для GoogleOTP
- {093F612B-727E-44E7-9C95-095F07CBB94B} – для Email OTP Provider
- {EBB6F3FA-A400-45F4-853A-D517D89AC2A3} – для SMS OTP Provider
Настройка для Passcode
Настройка для GoogleOTP
- В случае использования в качестве второго фактора Email OTP Provider возможно задать имя атрибута Active Directory в профиле пользователя, из которого система будет получать адрес электронной почты пользователя для отправки одноразового пароля. По умолчанию используется атрибут mail.
В случае необходимости задать атрибут, отличный от mail , следует в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule создать строковый параметр EmailAttribute и указать в качестве его значения имя атрибута, в котором хранится адрес электронной почты пользователя.
Настройка для Email OTP, когда адрес почты получается из атрибута mail (по умолчанию):
Настройка для Email OTP, когда адрес почты получается из атрибута otherMailbox:
- В случае использования в качестве второго фактора SMS OTP Provider возможно задать имя атрибута Active Directory в профиле пользователя, из которого система будет получать номер телефона пользователя для отправки одноразового пароля. По умолчанию используется атрибут telephoneNumber.
В случае необходимости задать атрибут, отличный от telephoneNumber , следует в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule создать строковый параметр PhoneAttribute и указать в качестве его значения имя атрибута, в котором хранится номер телефона пользователя.
Настройка для SMS OTP, когда номер телефона получается из атрибута telephoneNumber (по умолчанию):
Настройка для SMS OTP, когда номер телефона получается из атрибута mobile:
- Создайте в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule ключ с именем приложения в IIS (может иметь произвольное значение). Например: HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule\RDWeb
- В созданном ключе создайте следующие строковые и один DWORD параметры и определите их значения:
Параметр: LoginURL Значение: /RDWeb/Pages/en-US/login.aspx (для русскоязычной версии необходимо задать /RDWeb/Pages/ru-RU/login.aspx) Параметр: UsernameField Значение: DomainUserName Параметр: PasswordField Значение: UserPass Параметр: TargetURL Значение: /RDWeb/Pages/en-US/default.aspx (для русскоязычной версии необходимо задать /RDWeb/Pages/ru-RU/default.aspx) Параметр: AuthCookie Значение: TSWAAuthHttpOnlyCookie Параметр: OTPURL Значение: /RDWeb/iidotp.aspx Параметр (DWORD): IsMFAEnabled Значение: 00000001
Настройка для англоязычной версии
Настройка для русскоязычной версии
4. Теперь после удачной аутентификации в RDWeb Access по доменным логину и паролю у пользователя будет запрашиваться второй фактор в виде аутентификатора Indeed-Id, тип которого задан на этапе настройки модуля.
|