Настройка нескольких пользовательских каталогов
Если настройка нескольких каталогов осуществляется в уже используемой системе Indeed (после выдачи первичных прав для администратора системы), и изменяется расположение администратора системы или префикс заданный в параметре accessControlAdminSettings , то потребуется удалить выданные ранее права и выполнить повторный запуск утилиты первичной конфигурации.
Для удаления прав необходимо удалить все данные из таблицы DbAccessGroupMembers, расположенной в базе данных системы Indeed.
Если контейнеры находятся в разных доменах/лесах, то требуется создать пользователя для чтения данных с контейнера в своем домене/лесе.
- Добавьте внутри тега 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="inforest.demo.local" containerPath="OU=UsersInForest,DC=inforest,DC=demo,DC=local" userName="inforest\cataloguser1" password="Q1q2E3e4" />
<adUserCatalogProvider id="Ad3" serverName="newforest.local" containerPath="OU=Usersoutforest,DC=newforest,DC=local" userName="newforest\cataloguser2" password="Q1q2E3e4" />
</adUserCatalogProviders>
</userCatalogProviders>
2. Добавьте внутри тега orUserCatalogProviders тег orUserCatalogProvider с параметром id.
Значение параметра id должно соответствовать значению, заданному в параметре rootUserCatalogProviderId.
3. Добавьте внутри тега 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" />
</userCatalogProviders>
</orUserCatalogProvider>
</orUserCatalogProviders>
<accessControlAdminSettings userId="UserId_891f2b6c-9a55-4e1a-b69b-b4d6418f4c4c"/>
<logonSettings secretKey="*****"/>
<userCatalogProviderSettings rootUserCatalogProviderId="user">
<userCatalogProviders>
<sqlUserCatalogProviders>
</sqlUserCatalogProviders>
<adUserCatalogProviders>
<adUserCatalogProvider id="UserId" serverName="new.loc" containerPath="DC=new,DC=loc"
userName="indeed-users" password="Q1q2E3e4" />
<adUserCatalogProvider id="UserId1" serverName="test.new.loc" containerPath="DC=test,DC=loc"
userName="indeed-users" password="Q1q2E3e4" />
</adUserCatalogProviders>
</userCatalogProviders>
<combineRules>
<orUserCatalogProviders>
<orUserCatalogProvider id="user">
<userCatalogProviders>
<userCatalogProvider id="UserId" ignoreExceptions="true" />
<userCatalogProvider id="UserId1" ignoreExceptions="true" />
</userCatalogProviders>
</orUserCatalogProvider>
</orUserCatalogProviders>
<andUserCatalogProviders>
</andUserCatalogProviders>
</combineRules>
</userCatalogProviderSettings>