В данной статье мы рассмотрим, как настроить однофакторную или двухфакторную (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 (без пин).
![](https://support.indeed-id.ru/__swift/files/1505811410413e82feeef5d7ef06172654728baca26cee94d1.png)
2. Двухфакторная аутентификация (2FA) - пользователь аутентифицируется по доменному паролю, а в качестве второго фактора аутентификации в специальном окне вводит свой аутентификатор в системе Indeed-Id. Данная схема работает с провайдерами Passcode, GoogleOTP (без пин), SMS OTP (без пин), EMail OTP.
![](https://support.indeed-id.ru/__swift/files/1505811956c0b80c3756590cab755052c8e914e54a60cc6f4b.png)
Настройка однофакторной аутентификации
1. Выполнить установку Indeed.EA.IIS.Extension.x64.msi на сервере RDWeb Access
2. Включить установленный модуль для приложения RDWeb. Для этого:
- Откройте в Диспетчере служб IIS (IIS Manager) приложение RDWeb и перейдите в раздел Модули (Modules).
![](https://support.indeed-id.ru/__swift/files/1505813423b648cac2f326a7f1323e089c1654dd07e32244e1.png)
- В меню Действия (Actions) нажмите Выполняется настройка собственных модулей. . . (Configure Native Modules. . . ), включите модули Indeed и нажмите ОК.
![](https://support.indeed-id.ru/__swift/files/1505813495702c739b7a95d129cd4c3332b01346cee02ada77.png)
![](https://support.indeed-id.ru/__swift/files/15058135743925a8075847b735351e3821f0530f785dbed2a9.png)
- Перезапустите сервер IIS в Диспетчере служб IIS (IIS Manager).
![](https://support.indeed-id.ru/__swift/files/150581362374e5676220777904edd778bd3f01af7ddc778140.png)
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
![](https://support.indeed-id.ru/__swift/files/1505815881658c4b91904a40366ae49df8f4c788b896a98233.png)
Настройка для GoogleOTP
![](https://support.indeed-id.ru/__swift/files/1505815955d1b5b51820d5abe1ff2c804d9d4073bbf535db3e.png)
Таким образом мы указали, что Indeed IIS Extension будет обрабатывать все полученные аутентификаторы для всех web-приложений в соответствии указанным типом. Если необходимо настроить определенный тип аутентификатора для каждого приложения отдельно, существует более гибкая настройка. Ее мы рассмотрим в отдельной статье.
- Создайте в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule ключ с именем приложения в IIS (может иметь произвольное значение). Например: HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule\RDWeb
![](https://support.indeed-id.ru/__swift/files/1505824455eec6a3ebb342865b5990921f7a684e7453bbef5f.png)
- В созданном ключе создайте следующие строковые параметры и определите их значения:
Параметр: LoginURL Значение: /RDWeb/Pages/en-US/login.aspx (для русскоязычной версии необходимо задать /RDWeb/Pages/ru-RU/login.aspx) Параметр: UsernameField Значение: DomainUserName Параметр: PasswordField Значение: UserPass
Настройка для англоязычной версии
![](https://support.indeed-id.ru/__swift/files/1505826863e8204bf78034ad1ac511624aa6b9821161c1f129.png)
Настройка для русскоязычной версии
![](https://support.indeed-id.ru/__swift/files/15058270580df6d4cf78ad6d2294f3fdb91ab78796884dc891.png)
4. Теперь при входе в RDWeb Access пользователи смогут использовать не только доменный пароль, но и обученный аутентификатор Indeed-Id (Passcode или GoogleOTP в зависимости от настройки) вместо доменного пароля.
Настройка двухфакторной аутентификации (2FA)
1. Выполнить установку Indeed.EA.IIS.Extension.x64.msi на сервере RDWeb Access
2. Включить установленный модуль для приложения RDWeb. Для этого:
- Откройте в Диспетчере служб IIS (IIS Manager) приложение RDWeb и перейдите в раздел Модули (Modules).
![](https://support.indeed-id.ru/__swift/files/1505813423b648cac2f326a7f1323e089c1654dd07e32244e1.png)
- В меню Действия (Actions) нажмите Выполняется настройка собственных модулей. . . (Configure Native Modules. . . ), включите модули Indeed и нажмите ОК.
![](https://support.indeed-id.ru/__swift/files/1505813495702c739b7a95d129cd4c3332b01346cee02ada77.png)
![](https://support.indeed-id.ru/__swift/files/15058135743925a8075847b735351e3821f0530f785dbed2a9.png)
- Перезапустите сервер IIS в Диспетчере служб IIS (IIS Manager).
![](https://support.indeed-id.ru/__swift/files/150581362374e5676220777904edd778bd3f01af7ddc778140.png)
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
![](https://support.indeed-id.ru/__swift/files/1505815881658c4b91904a40366ae49df8f4c788b896a98233.png)
Настройка для GoogleOTP
![](https://support.indeed-id.ru/__swift/files/1505815955d1b5b51820d5abe1ff2c804d9d4073bbf535db3e.png)
- В случае использования в качестве второго фактора Email OTP Provider возможно задать имя атрибута Active Directory в профиле пользователя, из которого система будет получать адрес электронной почты пользователя для отправки одноразового пароля. По умолчанию используется атрибут mail.
В случае необходимости задать атрибут, отличный от mail , следует в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule создать строковый параметр EmailAttribute и указать в качестве его значения имя атрибута, в котором хранится адрес электронной почты пользователя.
Настройка для Email OTP, когда адрес почты получается из атрибута mail (по умолчанию):
![](https://support.indeed-id.ru/__swift/files/1505830951c14487c6ba69840a549fd5f942b43fcd4329793d.png)
Настройка для Email OTP, когда адрес почты получается из атрибута otherMailbox:
![](https://support.indeed-id.ru/__swift/files/15058317077073454a37f164227c9231e743eef99f0a6d279d.png)
- В случае использования в качестве второго фактора SMS OTP Provider возможно задать имя атрибута Active Directory в профиле пользователя, из которого система будет получать номер телефона пользователя для отправки одноразового пароля. По умолчанию используется атрибут telephoneNumber.
В случае необходимости задать атрибут, отличный от telephoneNumber , следует в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule создать строковый параметр PhoneAttribute и указать в качестве его значения имя атрибута, в котором хранится номер телефона пользователя.
Настройка для SMS OTP, когда номер телефона получается из атрибута telephoneNumber (по умолчанию):
![](https://support.indeed-id.ru/__swift/files/15058317691a434c3231be20814fe720624fc1f6dc60b47c1a.png)
Настройка для SMS OTP, когда номер телефона получается из атрибута mobile:
![](https://support.indeed-id.ru/__swift/files/15058318396d7bb1df667d05b58008b628d85f354e13ea14c4.png)
- Создайте в разделе реестра Windows HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule ключ с именем приложения в IIS (может иметь произвольное значение). Например: HKEY_LOCAL_MACHINE\SOFTWARE\Indeed-ID\IISHTTPModule\RDWeb
![](https://support.indeed-id.ru/__swift/files/1505824455eec6a3ebb342865b5990921f7a684e7453bbef5f.png)
- В созданном ключе создайте следующие строковые и один 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
Настройка для англоязычной версии
![](https://support.indeed-id.ru/__swift/files/1505833733e25ed031c21af3b1fbf6ef7fb3e70c886eb7850a.png)
Настройка для русскоязычной версии
![](https://support.indeed-id.ru/__swift/files/150583378529cd2a4110fcf992833deada595e0aa2ceb8d221.png)
4. Теперь после удачной аутентификации в RDWeb Access по доменным логину и паролю у пользователя будет запрашиваться второй фактор в виде аутентификатора Indeed-Id, тип которого задан на этапе настройки модуля.
|