- Created by Vladislav Fomichev, last modified on Feb 07, 2020
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 29 Next »
Информация
Файлы для indeed AM Server расположены: indeed AM\Indeed Access Manager Server\<Номер версии>\
- IndeedAM.Server-x64.ru-ru.msi - Пакет для установки Indeed AMprise Server 7
- /Misc/Templates - Шаблоны политик.
- /Misc/AM.KeyGen.exe - Утилита для генерации ключей шифрования.
- /Misc/AccessControlInitialConfig/EA.Server.AccessControlInitialConfig.exe - Утилита первичной конфигурации.
- /Misc/AccessControlInitialConfig/EA.Server.AccessControlInitialConfig.exe.config - Файл для настройки утилиты конфигурации.
- /Misc/AM.Config.Encryptor/EA.Config.Encryptor.exe - Утилита для шифрования конфигурационного файла.
- /Misc/AM.Config.Encryptor/EA.Config.Encryptor.exe/encryptConfigs.bat - Скрипт для шифрования всех секций конфигурационного файла.
- /Misc/AM.Config.Encryptor/EA.Config.Encryptor.exe/decryptConfigs.bat - Скрипт для расшифровки всех секций конфигурационного файла.
Установка
Информация
После установки сервера Indeed AM будет предложено выполнить настройку с помощью мастера конфигурации для этого не отключайте параметр "Запустить мастер настройки Indeed EA".
- Выполнить установку Indeed AM Server через запуск инсталлятора IndeedAM.Server-x64.ru-ru.msi.
Добавить привязку https в настройках Default Web Site в IIS Manager.
Информация
Indeed AM Server является Web приложением, которое работает на базе IIS, в процессе установки для него по умолчанию включается обязательно требование SSL в настройках, что в свою очередь требует включенной привязки https.
Если вы не намерены использовать протокол https, необходимо отключить требование SSL в настройках IIS для easerver и в конфигурационном файле сервера (C:\inetpub\wwwroot\easerver\Web.config) изменить значение параметра "requireHttps" на "false".
Пример<appSettings> <add key="requireHttps" value="false" /> </appSettings>
- Запустите IIS Manager и раскройте пункт Сайты (Sites).
- Выберите сайт Default Web Site и нажмите Привязки (Bindings) в разделе Действия (Actions).
- Нажмите Добавить (Add):
- Тип (Type) - https.
- Порт (Port) - 443.
- Выберите SSL-сертификат (SSL Certificate).
Сохраните привязку.
Настройка с помощью мастера конфигурации.
Информация
Мастер конфигурации по умолчанию запускается автоматически после установки Indeed AM Server, если запуск не был отключен пользователем.
Для запуска мастера вручную откройте файл: C:\Program Files\Indeed EA\Wizard\EA.Server.Wizard.exe
Информация
В мастер включена автоматическая проверка введенных данных, в случае успешного ввода - поля будут подсвечены зеленым цветом и вы сможете перейти к следующему шагу, если данные введены некорректно, то поля будут подсвечены красным, и вы не сможете перейти к следующему шагу пока не укажете корректные данные.
- На шаге "Перед началом работы" нажмите “Далее”.
- На шаге "Восстановление настроек" нажмите “Далее”.
- На шаге "Каталог пользователей" укажите следующие параметры:
- Имя домена (FQDN) - Укажите полное имя домена, например: domain.local.
- Сервисная учетная запись - Укажите сервисную учетную запись, обладающую правами доступа к пользовательскому каталогу. Нажмите кнопку "Изменить" и укажите требуемые данные учетной записи.
- LDAP путь к каталогу - Укажите путь к каталогу с пользователями. Нажмите кнопку "Выбрать" и выберете требуемый контейнер или домен целиком.
- На шаге "Хранилище данных" выберете тип хранилища Active Directory.
- Имя домена (FQDN) - Укажите полное имя домена, например: domain.local.
- Сервисная учетная запись - Укажите сервисную учетную запись, обладающую полными правами на контейнер, который будет использоваться в качестве хранилища данных Indeed. Нажмите кнопку "Изменить" и укажите требуемые данные учетной записи.
- LDAP путь к каталогу - Укажите путь к каталогу с пользователями. Нажмите кнопку "Выбрать" и выберете требуемый контейнер или домен целиком.
Шаг "Ключ шифрования". Выберете алгоритм шифрования, нажмите "Сгенерировать" и нажмите "Далее".
Информация
Рекомендуется выполнить резервную копию ключа шифрования и сохранить в защищенном месте
На шаге "Журнальный сервер" укажите следующие данные:
Информация
Чтобы при тестировании соединения не возникало ошибок, требуется полностью настроенный лог-сервер, с настроенной базой данных или установленным компонентом EventLog. Если журнальный сервер не готов к работе, вы можете пропустить этот шаг.
- Адрес журнального сервера - URL для подключения к серверу в формате http(s)://полное_dns_имя_сервера/ils/ , например: http://logserver.demo.local/ils/
- Сертификат - Выберете сертификат для настройки двухстороннего TLS соединения.
- Журналируемое поле объекта каталога - Укажите формат в котором будет осуществляться логирование имени пользователя.
Журналируемое поле компьютера - Укажите формат в котором будет осуществляться логирование поля "Компьютер".
Информация
Для логирования в формате DNS потребуется дополнительная настройка
- Шаг "Сессионный секрет". Сгенерируйте секрет для подписи токена, для этого нажмите "Сгенерировать". После генерации нажмите "Далее".
Шаг "Шифрование файла". Вы можете выполнить шифрование настроек конфигурационного файла.
Информация
В целях повышения безопасности рекомендуется выполнить шифрование конфигурационного файла.
Шаг "Подтверждение". Убедитесь в корректности указанных данных и нажмите "Применить".
Информация
Рекомендуется сделать резервную копию конфигурационного файла, по умолчанию параметр "Сохранить резервную копию параметров конфигурации" активен.
Ручная настройка системы
Редактирование конфигурационного файла.
Информация
Для сохранения изменений в конфигурационном файле приложения, требуется запустить редактор с правами администратора.
Ошибки, возникшие при развертывании сервера AM ( Например ошибка в конфигурационном файле ), будут логироваться исходя из настроек LogServer.
Для генерации ключей шифрования рекомендуется использовать утилиту AM.KeyGen.exe, выбрав необходимый алгоритм из предложенного списка.
Информация
Если в пароле для сервисных пользователей используются следующие символы: &, ", <, пробел , то пароль следуют указывать так:
Символ “амперсанд” (&) - При указании пароля для пользователя символ требуется заменить на: & Пример: password="Q1q2E3e4&"
Символ “двойные кавычки” (") - При указании пароля для пользователя символ требуется заменить на: " Пример: password="Q1q2E3e4""
Символ “меньше” (<) - При указании пароля для пользователя символ требуется заменить на: < Пример: password="Q1q2E3e4<"
- Откройте конфигурационный файл сервера Web.config (C:\inetpub\wwwroot\easerver\Web.config).
Добавить секретный ключ для подписи токена для параметра "secretKey" тега "logonSettings". Параметр "secretKey" используется для создания токена пользователя в формате "jwt".
Пример<logonSettings secretKey="67d7e6caec61d61239dc0b05f86063ed899931b581fa1ed8140d7843b320fe02"/>
Задать каталог пользователя системы, для этого необходимо отредактировать параметры в теге adUserCatalogProvider:
- id - произвольный уникальный идентификатор каталога.
- serverName - имя домена Active Directory, в котором находится каталог.
- containerPath - путь к контейнеру в виде Distinguished Name или весь домен, если для хранения пользователей используется весь домен.
- userName - имя сервисной учетной записи для подключения к каталогу пользователей.
- password - пароль сервисной учетной записи каталога пользователей в AD.
Пример<adUserCatalogProviders> <adUserCatalogProvider id="UserId" serverName="indeed-id.local" containerPath="DC=indeed-id,DC=local" userName="IndeedCatalogUser" password="Q1q2E3e4"/> </adUserCatalogProviders>
3.1. Настройка нескольких пользовательских каталогов.
Информация
Если настройка нескольких каталогов осуществляется в уже используемой системе Indeed (После выдачи первичных прав для администратора системы), и изменяется расположение администратора системы или префикс заданный в параметре "accessControlAdminSettings" , то потребуется удалить выданные ранее права и выполнить повторный запуск утилиты первичной конфигурации.
Для удаления прав необходимо удалить все вложенные объекты из контейнера CN=AccessGroupMember, расположенного в контейнере системы Indeed.
Информация
Если контейнеры находятся в разных доменах/лесах, то требуется создать пользователя для чтения данных с контейнера в своем домене/лесе.
a. Добавьте внутри тега adUserCatalogProviders строки для подключения к контейнерам.
Пример<userCatalogProviderSettings rootUserCatalogProviderId="user"> <userCatalogProviders> <sqlUserCatalogProviders></sqlUserCatalogProviders> <adUserCatalogProviders> <adUserCatalogProvider id="Ad1" serverName="demo.local" containerPath="OU=Indeed_Users,DC=demo,DC=local" userName="demo\ind-user" password="Q1q2E3e4" /> <adUserCatalogProvider id="Ad2" serverName="demo.local" containerPath="OU=inDomainUsers,DC=demo,DC=local" userName="demo\ind-user" password="Q1q2E3e4" /> <adUserCatalogProvider id="Ad3" serverName="inforest.demo.local" containerPath="OU=UsersInForest,DC=inforest,DC=demo,DC=local" userName="inforest\cataloguser1" password="Q1q2E3e4" /> <adUserCatalogProvider id="Ad4" serverName="newforest.local" containerPath="OU=Usersoutforest,DC=newforest,DC=local" userName="newforest\cataloguser2" password="Q1q2E3e4" /> </adUserCatalogProviders> </userCatalogProviders>
b. Добавьте внутри тега orUserCatalogProviders тег orUserCatalogProvider с параметром id.
Информация
Значение параметра id должно соответствовать значению заданному в параметре rootUserCatalogProviderId
c. Добавьте внутри тега orUserCatalogProvider тег userCatalogProviders. Внутри тега userCatalogProviders добавьте теги userCatalogProvider с параметром id, в котором указывается идентификатор пользовательского контейнера и ignoreExceptions со значением true, данный параметр игнорирует ошибку подключения к каталогу, если данный каталог не доступен.
Пример<orUserCatalogProviders> <orUserCatalogProvider id="user"> <userCatalogProviders> <userCatalogProvider id="Ad1" ignoreExceptions="true" /> <userCatalogProvider id="Ad2" ignoreExceptions="true" /> <userCatalogProvider id="Ad3" ignoreExceptions="true" /> <userCatalogProvider id="Ad4" ignoreExceptions="true" /> </userCatalogProviders> </orUserCatalogProvider> </orUserCatalogProviders>
Указать корневой идентификатор провайдера работы с каталогом, необходимо отредактировать атрибут rootUserCatalogProviderId в теге userCatalogProviderSettings.
Информация
При использовании нескольких пользовательских каталогов в параметре rootUserCatalogProviderId указывается общий идентификатор каталогов, заданный в параметре id тега orUserCatalogProvider.
- rootUserCatalogProviderId - задать значение, которое уже было задано в тэге adUserCatalogProvider в атрибуте id.
Пример<userCatalogProviderSettings rootUserCatalogProviderId="UserId">
- Задать хранилище данных системы. Для хранилища данных в Active Directory редактируем параметр rootDbContextId в теге dbContextSettings и параметры в тэге adDbContext.
- rootDbContextId - задать произвольно уникальное значение идентификатора хранилища.
- id - задать значение, которое уже было задано в тэге rootDbContextId.
- path - LDAP путь к контейнеру с данными в Active Directory. Рекомендуется указывать в формате "serverless binding"(Без жесткой привязки к серверу).
- userName - имя сервисной учетной записи для подключения к хранилищу.
- password - пароль сервисной учетной записи каталога пользователей в AD.
Пример<dbContextSettings rootDbContextId="IDRepository"> <adDbContexts> <adDbContext id="IDRepository" path="LDAP://indeed-id.local/OU=Indeed AM 7,DC=indeed-id,DC=local" userName="IndeedDataUser" password="Q1q2E3e4" /> </adDbContexts> </dbContextSettings>
Задать ключ шифрования данных системы. Редактируем параметры в теге encryptionSettings.
cryptoAlgName - указать использованный алгоритм шифрования.
cryptoKey - значения ключа, сгенерированного утилитой.
certificateThumbprint - Thumbprint сертификата, которым зашифрован ключ (чтобы не учитывать - нужно удалить атрибут).
Пример<encryptionSettings cryptoAlgName="Aes" cryptoKey="90ce7dbc3ff94a7867abc6672c23cce2c3717d38af42f04293130cb68a34ecc2"/>
Задать администратора системы. Редактируем параметр userId тега accessControlAdminSettings.
- userId - идентификатор пользователя в формате: “<Идентификатор каталога><нижнее подчеркивание><GUID Администратора Системы>”.
Примечание
Пользователь должен находится внутри каталога пользователей.
При использовании нескольких пользовательских контейнеров для <Идентификатор каталога> указывается id контейнера в котором находится администратор системы.
Пример<accessControlAdminSettings userId="UserId_84e9ccd9-73a2-43c7-abc6-604a16902037"/>
Информация
Получить GUID можно с помощью команды PowerShell. Предварительно необходимо установить компонент Remote Server Administration Tools:
ПримерGet-ADUser YouUserName -Properties * | Select ObjectGUID
Задаем url для подключения к лог серверу. Редактируем тег logServer.
URL - url для подключения к log серверу в формате http(s)://полное_dns_имя_сервера/ils/api.
Примечание
Если используется несколько серверов, указываем адрес балансировщика нагрузки.
- CertificateThumbprint - если закрытый ключ в реестре, а сертификат в хранилище компьютера.
- CertificateFilePath - если ключевая пара в pfx.
- CertificateFilePassword - пароль от pfx.
Пример<logServer Url="http://log.indeed-id.local/ils/api/" CertificateThumbprint="" CertificateFilePath="" CertificateFilePassword=""/>
Шифрование/Расшифрование конфигурационного файла.
- Запустите командную строку от имени "Администратора".
В командной строке перейдите в папку с утилитой для шифрования.
Информация
Утилита шифрует секции: logServer, logonSettings, userCatalogProviderSettings, encryptionSettings, dbContextSettings. Рекомендуется зашифровать все секции.
Шифрование/Расшифрование отдельных секций.
Для шифрования отдельной секции необходимо выполнить команду вида: EA.Config.Encryptor /encrypt "Путь к конфигурационному файлу сервера" "Имя секции"ПримерEA.Config.Encryptor /encrypt "C:\inetpub\wwwroot\easerver\Web.config" "logServer"
Для расшифровки отдельной секции необходимо выполнить команду вида: EA.Config.Encryptor /decrypt "Путь к конфигурационному файлу сервера" "Имя секции"
ПримерEA.Config.Encryptor /decrypt "C:\inetpub\wwwroot\easerver\Web.config" "logServer"
- Шифрование/Расшифрование всех секций.
Для шифрования необходимо запустить скрипт encryptConfigs.bat.
Для расшифровки необходимо выполнить скрипт decryptConfigs.bat
Настройка первичной конфигурации.
- Открыть для редактирования файл EA.Server.AccessControlInitialConfig.exe.config.
Редактировать атрибут key - параметр value необходимо поставить в значение true, если для авторизации мы хотим использовать Windows Token.
Если сервер находится не в домене, есть вариант использовать один из следующих провайдеров: windows password, emailOTP, smsOTP. Для этого value должно быть в положении false.<appSettings> <add key="eaServerUrl" value="http://192.168.1.2/easerver/"/> <add key="isWindowsAuth" value="false"/> </appSettings>
- Запустить на доменной машине утилиту EA.Server.AccessControlInitialConfig.exe под пользователем, которого необходимо сделать администратором системы и который прописан в качестве администратора в тэге accessControlAdminSettings.
- No labels