Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Модуль Indeed AM Identity Provider (ранее Indeed AM SAML IDP) используется для организации многофакторной аутентификации и сквозного доступа в веб-приложения.
Начиная с версии Indeed AM Access Manager 8.1.5, модуль Indeed AM Identity Provider поддерживает следующие протоколы:
Infowarning | ||
---|---|---|
| ||
Если вы пользуетесь Indeed AM Access Manager 8.1.4 и ниже, необходимую информацию об установке и настройке модуля вы найдете на странице Indeed AM SAML IDP. |
Identity Provider избавляет пользователя от необходимости запоминать множество учетных данных: для доступа во все интегрированные системы требуется только один комплект учетных данных. Аутентификация выполняется централизованно на стороне Identity Provider.
Identity Provider поддерживает следующие технологии аутентификации пользователей в любых сочетаниях:
- доменный пароль
- одноразовые пароли OATH, TOTP и HOTP
- одноразовые коды через SMS и email
- мобильное приложение Indeed Key
Подготовка к установке
Перед установкой Identity Provider убедитесь, что на сервере установлена библиотека установлен .NET 6 и необходимые компоненты Internet Information Services.
Note | ||
---|---|---|
| ||
Корректная работа Identity Provider гарантируется только при использовании .NET 6. |
Для установки библиотеки .NET запустите утилиту dotnet-hosting-6.0.10-win.exe из Indeed AM <номер версии>/Indeed AM Idp.
Для установки компонентов Internet Information Services запустите скрипт Indeed.SAML.IIS.Install.MSSserver.ps1 из Indeed AM <номер версии>/Misc/IISScripts.
В папке Indeed AM <номер версии>/Indeed AM Idp расположены следующие файлы:
IndeedAM.IDP-v8.1.5.x64.ru-ru.msi — пакет для установки Identity Provider.
AccessManager.Tools.Importer.Services.Console.x64.exe — утилита для обновления Indeed AM SAML IDP до Identity Provider.
dotnet-hosting-6.0.10-win.exe — утилита для установки библиотеки .NET.
Warning | ||
---|---|---|
| ||
По умолчанию Identity Provider использует аутентификацию Windows. Для внедоменных сценариев включите анонимную аутентификацию. Для этого выполните следующие действия:
|
Установка пакета
Чтобы установить и настроить Identity Provider, выполните следующие действия:
Установите пакет IndeedAM.IDP-v8.1.5.x64.ru-ru.msi.
Note title Информация По умолчанию после установки пакета создается и устанавливается новый сертификат сервера IDP. Сертификат шифрует данные, передаваемые между сервером Indeed AM Access Manager и конечными приложениями, например консолью администратора.
Сертификат не предназначен для организации соединения по протоколу SSL.
Если сертификат был сгенерирован ранее, уберите флажок Создать и установить новый сертификат IDP сервера.
Добавьте привязку в настройках IIS.
Запустите Диспетчер служб IIS и выберите Сайты (Sites).
Выберите Default Web Site и нажмите Привязки (Bindings) в разделе Действия (Actions).
Нажмите Добавить (Add):
Тип (Type) — https.
Порт (Port) — 443.
Выберите SSL-сертификат (SSL Certificate).
Сохраните привязку.
Info | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
Identity Provider — это веб-приложение, которое работает на базе IIS. По требованиям безопасности Identity Provider работает только по протоколу HTTPS. Не меняйте протокол, это снижает безопасность соединения. Если вы планируете использовать соединение по протоколу HTTP, измените настройки в файле Web.config из C:\inetpub\wwwroot\am\idp. В теге aspNetCore добавьте следующее:
Должно получиться следующее:
|
Редактирование конфигурационного файла
В конфигурационном файле app-settings.json выполните следующие действия:
Откройте конфигурационный файл app-settings.json из C:\inetpub\wwwroot\am\idp.
Измените параметр AuthenticationServer. В строке Url укажите адрес сервера в формате http(s)://полное_dns_имя_сервера/am/core/.
Code Block language xml "AuthenticationServer": { "Url": "AUTH_SERVER_URL", "IsIgnoreCertErrors": false }
Code Block language xml title Пример адреса сервера https://server.test.local/am/core/
Note title Информация Если вы используете соединение по протоколу HTTPS, вам необходимо установить клиентский сертификат на каждый сервер Indeed AM.
Чтобы ошибки сертификата сервера игнорировались, измените значение параметра IsIgnoreCertErrorsна значение true.
Измените параметр Server. В строке Url укажите адрес для подключения к Indeed AM Log Server в формате http(s)://полное_dns_имя_сервера/ls/api.
Code Block language xml "Server": { "Url": "LOG_SERVER_URL" }
Code Block language xml title Пример адреса сервера Indeed AM Log Server https://server.test.local/ls/api/
Измените параметр LocalIdentityProviderConfiguration:
В строке SingleSignOnServiceUrl укажите адрес Identity Provider в формате http(s)://полное_dns_имя_сервера/am/idp/Account/SsoService.
Code Block language xml "LocalIdentityProviderConfiguration": { "Name": "urn:indeedid:saml_idp", "SingleSignOnServiceUrl": "IDENTITY_PROVIDER_URL/Account/SsoService"
Code Block language xml title Пример адреса сервера SSO https://server.test.local/am/idp/Account/SsoService
В строке Thumbprint укажите отпечаток сертификата Identity Provider, который был сгенерирован при установке.
Code Block language xml "LocalIdentityProviderConfiguration": { "LocalCertificates": [ { "Thumbprint": "" } ] }
Info title Информация Вы можете найти сертификат в хранилище Local Machine→Personal→Certificates (сертификат с именем idp), либо получить с помощью запроса PowerShell:
Code Block language powershell Get-Childitem Cert:\LocalMachine\My\ | Where-Object {$_.Subject -eq "CN=idp"}
В параметре AuthenticationMethods удалите ненужные строки и добавьте идентификаторы провайдеров, которые вы планируете использовать, в следующем формате:
Идентификаторы провайдеров вы можете найти в разделе Установка и настройка провайдеров.
В параметре Name укажите произвольное уникальное значение.
В параметреProviders — идентификатор используемого провайдера.Info title Доступные идентификаторы для Identity Provider Identity Provider поддерживает следующие провайдеры:
- 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
- AirKeyProvider — DEEF0CB8-AD2F-4B89-964A-B6C7ECA80C68
- Windows Password — CF189AF5-01C5-469D-A859-A8F2F41ED153
- Telegram OTP — CA4645CC-5896-485E-A6CA-011FCC20DF1D
Если для аутентификации используется один провайдер:
Code Block language yml title Пример использования одного провайдера "AuthenticationMethods": [ { "Name": "Passcode", "Providers": [ "F696F05D-5466-42b4-BF52-21BEE1CB9529" ] }
Если для аутентификации используются несколько провайдеров:
Code Block language yml title Пример использования нескольких провайдеров "AuthenticationMethods": [ { "Name": "HOTP_Passcode", "Providers": [ "AD3FBA95-AE99-4773-93A3-6530A29C7556", "F696F05D-5466-42b4-BF52-21BEE1CB9529" ] }
Note title Информация Если вы одновременно используете аутентификацию по Windows Password и по провайдеру, журнал событий отображает следующее:
Windows Password был введен верно, провайдер неверно — в событиях пользователя регистрируется успешный вход в Identity Provider с помощью Windows Password.
Windows Password был введен верно, провайдер верно — в событиях пользователя регистрируется успешный вход с помощью провайдера.
- Сохраните конфигурационный файл и перезапустите IIS.
В этом разделе
Интеграция с приложениями по протоколам OpenID Connect и OAuth 2.0
- Аутентификация по имени пользователя без указания домена
- Включение защиты от перебора
Backtotop
Table of Contents | ||
---|---|---|
|