Установка и настройка Indeed Enterprise Server 7.0 c хранилищем данных и каталогом пользователей в Active Directory
Автор Anton Shlykov, Last modified by Vladislav Fomichev на 15 ноября 2018 03:43 PM
В данной статье будет рассмотрен процесс установки и настройки Indeed Enterprise Server версии 7.0 в инфраструктуре, где в качестве хранилища данных и каталога пользователей будет использоваться домен Active Directory.

Предварительные условия для установки:
1. Наличие домена Active Directory (уровень функциональности леса и домена не ниже Windows Server 2008)
2. Наличие у пользователя, под которым будет осуществляться установка и настройка системы прав на создание объектов в домене и выдачу прав для созданных объектов.
3. Наличие выделенной виртуально или реальной серверной машины для развертывания Indeed Enterprise Server, включенной в домен
4. Наличие у пользователя прав локального администратора на серверной машине

Полный список подготовительных требований для начала внедрения можно найти в статье:

В статье установка будет производиться в домене indeed-id.local , а в качестве серверной машины будет выступать Windows Server 2012.

Порядок установки:

1. В домене Active Directory необходимо выделить контейнер для создания в нем хранилища данных новой системы (хранилище представляет из себя контейнер, включающий в себя набор подконтейнеров, в которых и будут храниться все данные системы). Это может быть контейнер или подразделение (OU). Находится контейнер с данными системы может как в корне домена, так и в подконтейнере любой вложенности.

В качестве примера создаем в корне домена indeed-id.local подразделение Indeed EA 7.0. В нем и будут храниться данные системы.



2. Необходимо создать служебную учетную запись для работы системы с хранилищем данных в домене. От имени этой учетной записи сервер Indeed EA будет подключаться к хранилищу данных и будет читать/записывать информацию из/в хранилища. Для данной учетной записи необходимо выдать полные права на весь контейнер с данными системы (который был создан в предыдущем пункте) и на все его дочерние элементы любой вложенности.

Создаем в домене учетную запись IndeedDataUser с паролем QWqw123 (имя и пароль могут быть любыми) и выдаем ей полные права на подразделение Indeed EA 7.0 и на все его дочерние элементы.









3. Необходимо определиться, какой объект в домене будет являться каталогом пользователей для нашей системы. Это может быть либо весь домен (в этом случае система будет работать с пользователями всего домена). Либо это может быть отдельное подразделение - в этом случае система будет "видеть" только пользователей данного подразделения (OU). 

В нашем примере мы будем использовать в качестве каталога пользователей весь домен indeed-id.local.

4. Необходимо создать служебную учетную запись для работы системы с каталогом пользователей. От имени этой учетной записи сервер Indeed EA будет подключаться к каталогу пользователей из предыдущего пункта и получать информацию по пользователям из Active Directory. Для данной учетной записи необходимо выдать права на чтение на весь каталог пользователей, который был определен в предыдущем пункте.

В нашем примере мы создадим пользователя IndeedCatalogUser, который и будет служебной записью для чтения данных пользователей домена. По-умолчанию у всех пользователей в домене есть права на чтение данных всех объектов в домене, если политикой безопасности не задано обратное, поэтому нашему пользователю не потребуется выдавать дополнительные права.

5. Выполнить вход на серверную машину, выделенную для установки и настройки Indeed Enterprise Server 7.0, под пользователем с правами локального администратора.

6. Развернуть на серверной машине роль Web Server (IIS) со следующим списком компонентов:
– Статическое содержимое (Static Content)
– Перенаправление HTTP (HTTP Redirection)
– ASP.NET
– Расширяемость .NET (.NET Extensibility)
– Расширения ISAPI (ISAPI Extensions)
– Фильтры ISAPI (ISAPI Filters)
– Обычная проверка подлинности (Basic Authentication)
– Windows-проверка подлинности (Windows Authentication)
– Консоль управления службами IIS (IIS Management Console)

Для ускорения и упрощения процесса установки роли IIS мы рекомендуем воспользоваться скриптом из следующей статьи: https://support.indeed-id.ru/Knowledgebase/Article/View/325/0/skript-dlya-avtomaticheskoi-ustanovki-roli-iis-dlya-dalneishei-korrektnoi-ustanovki-indeed-emcindeed-cm

После запуска скрипта Вы получите сервер с ролью IIS со всеми необходимыми компонентами.

7. Выполнить на сервере установку .NET Framework 4.5.2

8. Выполнить установку Indeed Enterprise Server 7.0 через запуск инсталлятора IndeedEA.Server-v7.0.x64.ru-ru.msi (каталог \Indeed Enterprise Server\<номер версии>\ дистрибутива)




9. Выполнить установку необходимых провайдеров аутентификации, которые планируются к использованию (каталог \Indeed Providers дистрибутива).

Важно: для корректной работы всех провайдеров аутентификации (за исключением HOTP) требуется установка Indeed Bsp Broker (каталог \Indeed Providers\Indeed BspBroker\7.0.1\ дистрибутива).

Установка провайдеров аутентификации и Indeed Bsp Broker производится через запуск соответствующих пакетов msi.

В нашем примере мы выполним установку Indeed Software TOTP Provider (позволяет использовать для аутентификации OTP на мобильном устройстве сгенерированные, например, приложением Google Authenticator) и Indeed Bsp Broker (необходим для работы провайдера Indeed Software TOTP Provider, как отмечалось выше).





10. Добавить привязку https в настройка Default Web Site в IIS Manager (Indeed Enterprise Server 7.0 является Web приложением, которое работает на базе IIS, в процессе установки для него по умолчанию включается обязательно требование SSL в настройках, что в свою очередь требует включенной привязки https).


  1. Если будет использоваться протокол http, необходимо отключить в конфигурационном файле использование https по умолчанию. Для тега "appSettings key="requireHttps" установить значение "false".


Редактирование конфигурационного файла.

  1. Открыть конфигурационный файл сервера. 
    C:\inetpub\wwwroot\easerver\Web.config.
  2. Добавить секретный ключ для подписи токена.  
    <logonSettings secretKey="SECRET_KEY"/>  Для генерации рекомендуется использовать утилиту keygen (Indeed Enterprise Server\7.0.2\Misc\EA.KeyGen.exe) выбрав произвольный алгоритм. 
  3.  Задать каталог пользователя системы, для этого необходимо отредактировать тэг: adUserCatalogProvider.
    1. id - задать произвольный уникальный идентификатор каталога. Для данного примера задается: AD.
    2. serverName - имя домена Active Directory, в котором находится каталог. В данном примере используется: indeed-id.local.
    3. containerPath - путь к контейнеру в виде Distinguished Name или весь домен, если для хранения пользователей используется весь домен. Для данного примера:DC=indeed-id,DC=local.
    4. userName - имя сервисной учетной записи для подключения к каталогу пользователей. В данном примере используется: IndeedCatalogUser.
    5. password - пароль сервисной учетной записи каталога пользователей в AD. В данном примере используется: QWqw123.
  4. Указать корневой идентификатор провайдера работы с каталогом, необходимо отредактировать атрибут rootUserCatalogProviderId в теге userCatalogProviderSettings.
    1. rootUserCatalogProviderId -  задать значение, которое уже было задано в тэге adUserCatalogProvider в атрибуте id. Для данного примера: AD.
  5. Задать хранилище данных системы. Для хранилища данных в Active Directory редактируем атрибут rootDbContextId тега dbContextSettings и тэг  adDbContext.
    1. rootDbContextId - задать произвольно уникальное значение идентификатора хранилища. Для примера задается IDRepository.
      1. id - задать значение, которое уже было задано в тэге adDbContext в атрибуте id. Для данного примера: IDRepository .
      2. path - LDAP путь к контейнеру с данными в Active Directory. В данном примере: LDAP://OU=Indeed EA 7.0,DC=indeed-id,DC=local .
      3. userName - имя сервисной учетной записи для подключения к хранилищу. В данном примере используется: IndeedDataUser.
      4. password - пароль сервисной учетной записи каталога пользователей в AD. В данном примере используется: QWqw123.
    2. Задать ключ шифрования данных системы. Редактируем тег encryptionSettingsДля генерации рекомендуется использовать утилиту keygen (Indeed Enterprise Server\7.0.2\Misc\EA.KeyGen.exe) выбрав произвольный алгоритм.
      1. cryptoAlgName - указать использованный алгоритм шифрования.
      2. cryptoKey - значения ключа, сгенерированного утилитой.
      3. certificateThumbprint - Thumbprint сертификата, которым зашифрован ключ (чтобы не учитывать - нужно удалить атрибут).

    3. Задать администратора системы. Редактируем тег - accessControlAdminSettings.
      1. userId - идентификатор пользователя в формате: “Идентификатор каталога(rootUserCatalogProviderId); нижнее подчеркивание; идентификатор пользователя в каталоге”.
        В данном примере:
        AD_84e9ccd9-73a2-43c7-abc6-604a16902037.

        Пользователь должен находится внутри каталога пользователей. Получить GUID можно с  помощью команды PowerShell (Предварительно необходимо установить компонент  Remote Server Administration Tools):
        Get-ADUser ИмяПользователя -Properties * | Select ObjectGUID 

    4. Задать log-сервер. Редактируем тег - logServer.
      1. URL - url для подключения к log серверу в формате http(s)://имя сервера/ils/api. Если используется несколько серверов, указываем адрес балансировщика нагрузки.
      2. CertificateThumbprint - если закрытый ключ в реестре, а сертификат в хранилище компьютера.
      3. CertificateFilePath - если ключевая пара в pfx.
      4. CertificateFilePassword - пароль от pfx.

    Настройка утилиты первичной конфигурации.
    Утилита находится:
    indeed EA 7.0\Indeed Enterprise Server\7.0.2\Misc\AccessControlInitialConfig.
    Она необходима для базовой выдачи прав на AccessControl, а так же на EMC (чтобы иметь доступ к веб интерфейсу).

    1. Открыть для редактирования файл EA.Server.AccessControlInitialConfig.exe.config.
    2. Редактировать атрибут key - параметр value необходимо поставить в значение true, если для авторизации мы хотим использовать Windows Token.
      1. Если сервер находится не в домене, есть вариант использовать один из следующих провайдеров: windows password, emailOTP, smsOTP. Для этого value должно быть в положении false.
    3. Запустить на доменной машине утилиту EA.Server.AccessControlInitialConfig.exe под пользователем, GUID которого прописан в качестве администратора в тэге accessControlAdminSettings.

    Для того, чтобы убедиться в корректности настроек и успешном запуске сервера нужно обратиться через браузер по адресу сервера (в данном примере: http://192.168.1.7/easerver/) и признаком успеха будет являться создание структуры хранилища внутри указанного подразделения для хранения данных (в данном примере - Indeed EA 7.0).






    (0 голос(а))
    Эта статья полезна
    Эта статья бесполезна

    Комментарии (0)
    Добавить новый комментарий
     
     
    Полное имя:
    Email:
    Комментарии: