Служба AD Sync - обеспечивает непрерывную, одностороннюю синхронизацию из Active Directory (AD) предприятия в CloudPortal Services Manager (CPSM) в Cloud24. Служба AD Sync позволяет синхронизировать контроллеры домена вашей компании с контроллерами домена CPSM.
AD Sync может быть установлен только на контроллере домена, с любой версией Windows Server от 2003 R2 до 2019 года. Однако, если у вас есть контроллеры домена Windows Server 2012 или более поздние версии, необходимо повысить уровень функциональности домена до Windows Server 2008 или более поздней. Если этого не сделать, работа AD Sync будет нестабильной.
Для корректной синхронизации эта служба должна быть установлена на всех контроллерах домена в вашем лесу AD. Работа этой службы не будет никак заметна в вашей сетевой среде.
Атрибут User Principal Name (UPN) вашего пользователя в AD будет именем пользователя в Cloud24. Учетные записи ваших пользователей в CPSM будут регулярно синхронизироваться с любыми изменениями, выполненными в вашем локальном лесу AD.
Установка AD Sync.
Следующие шаги должны быть выполнены на всех контроллерах домена в вашем лесу Active Directory. Если существуют дочерние домены, AD Sync должен быть помещен в каждый домен.
Войдите в CloudPortal Services Manager (CPSM) под учетной записью, предоставленные вам службой поддержки Cloud24.
Создайте Global Security группу в вашей AD с названием AD Sync и добавьте в эту группу всех пользователей, планируемых для синхронизации в Cloud24.
В панели CPSM в меню Services перейдите в AD Sync и нажмите AD Sync Download.
Загрузите дистрибутив AD Sync на каждый контроллер домена в лесу.
Двойным кликом запустите установку;
Нажмите Next;
Введите пароль Вашей учетной записи администратора панели;
На шаге Events to watch активируйте опции Watch for changes to users, Watch for changes to contacts, Watch for changes to groups.
Опцию User out of scope action: Ignore.
Оставьте значение User, contact, and group watch frequency (second) 5 секунд
Нажмите Next;На шаге User, contact, and group to synchronize удалите все группы, перечисленные в разделе Exclude users in these groups, а также группу Users в разделе Include users in these groups. Эти поля теперь должны быть пустыми.
В поле Group name введите AD Sync и нажмите Find now. Это должно найти глобальную группу безопасности, созданную на шаге 2.На шаге User Information section оставляем без изменений;
На шаге Connection Information section оставляем без изменений;
Если в компании используется Proxy server, введите данные сервера;
Путь установки рекомендуется оставить по умолчанию;
Внести в файл конфигурации (C:\Program Files\AD Sync\ADSync.exe.config) изменения в строках указанные ниже
<setting name="UpnFormat" serializeAs="String"> <value>UserPrincipalName</value> </setting> <setting name="UploadMaxErrors" serializeAs="String"> <value>5</value> </setting> <setting name="UserSync" serializeAs="String"> <value>True</value> </setting> <setting name="ContactSync" serializeAs="String"> <value>True</value> </setting> <setting name="ContactSyncDelete" serializeAs="String"> <value>True</value> </setting> <setting name="GroupSync" serializeAs="String"> <value>True</value> </setting> <setting name="BatchUploads" serializeAs="String"> <value>True</value> </setting> <setting name="ThrottleUploads" serializeAs="String"> <value>True</value> </setting> <setting name="MaxResubmits" serializeAs="String"> <value>5</value> </setting>
примечание: если у компании несколько почтовых доменов строку <setting name="UpnFormat" serializeAs="String"> желательно оставить без изменений
если у клиента не подготовлен тот же домен, как указано в UPN пользователей, синхронизация завершится неудачно.
После окончания установки необходимо перезагрузить контроллер домена.
Первая синхронизация пользователя
Первоначально, когда пользователь добавляется в группу AD Sync для синхронизации, сам пользователь будет синхронизироваться с пустым паролем, изменение пароля фиксируется только при его изменении. Таким образом, чтобы синхронизировать пароли, пользователь должен изменить свой пароль после синхронизации учетной записи. Самый простой способ сделать это — включить опцию затребовать пароль при первом входе.
Расширенные настройки AD Sync
В случае если у компании имеется несколько почтовых доменов и есть необходимость синхронизировать с вашей AD атрибут пользователя mail необходимо внести ряд изменений в сервис и конфигурационные файлы AD Sync
Обратитесь в службу поддержки, наши инженеры должны внести изменения в сервис как указано ниже
Перед внесением изменений обязательно сделайте резервную копию изменяемых файлов!
На всех контроллерах домена в файле C:\Program Files\AD Sync\Requests\SetUser.xml необходимо строки
<addresses templatedependency="userAddressSync"> <address templatedependency="otherAddresses" templateforeach="otherAddress,otherAddresses" primary="False">{otherAddress}</address> <address templatedependency="mail,primaryAddress" templatecondition='{mail}<>""' primary="False">{mail}</address> <address templatedependency="primaryAddress" primary="False">{upn}</address> <address templatedependency="mail,-primaryAddress" templatecondition='{mail}<>""' primary="False">{upn}</address> <address templatedependency="mail,-primaryAddress" templatecondition='{mail}=""' primary="True">{upn}</address> <address templatedependency="-mail,-primaryAddress" primary="True">{upn}</address> <address templatedependency="mail,-primaryAddress" templatecondition='{mail}<>""' primary="True">{mail}</address> <address templatedependency="primaryAddress" primary="True">{primaryAddress}</address> </addresses>
заменить на
<addresses templatedependency="userAddressSync"> <address templatedependency="otherAddresses" templateforeach="otherAddress,otherAddresses" primary="False">{otherAddress}</address> <address templatedependency="mail,primaryAddress" templatecondition='{mail}<>""' primary="False">{mail}</address> <address templatedependency="primaryAddress" primary="False">{mail}</address> <address templatedependency="mail,-primaryAddress" templatecondition='{mail}<>""' primary="False">{mail}</address> <address templatedependency="mail,-primaryAddress" templatecondition='{mail}=""' primary="True">{mail}</address> <address templatedependency="-mail,-primaryAddress" primary="True">{mail}</address> <address templatedependency="mail,-primaryAddress" templatecondition='{mail}<>""' primary="True">{mail}</address> <address templatedependency="primaryAddress" primary="True">{primaryAddress}</address> </addresses>
В файле C:\Program Files\AD Sync\ADSync.exe.config замените строки
<setting name="UserAdressSync" serializeAs="String"> <value>False</value> </setting>
на
<setting name="UserAdressSync" serializeAs="String"> <value>True</value> </setting>
Перезагрузите все ваши контроллеры домена.
После внесенных изменений будут синхронизироваться только пользователи с явно указанным атрибутом email иначе в логах Ad Sync вы увидите ошибки
Error 2 Failed to upload user 'Jane.Wilde' because Failed to update user 'Jane.Wilde': User eMail address '' is not valid
Увеличение размера файла логов
По умолчанию размер файла логов не может превышать стандартного ограничения файла .NET и по умолчанию составляет 5Мб. После в файл прекращается запись, ротация логов ежедневная.
Для изменения настроек логирования необходимо внести изменения в файл конфигурации ADSync.exe.config
строки:
<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" location="Custom" logFileCreationSchedule="Daily" traceOutputOptions="DateTime" autoFlush="True" customLocation="C:\Program Files\AD Sync\Logs"> <filter type="System.Diagnostics.EventTypeFilter" initializeData="ActivityTracing,Information"/> </add>
заменить на:
<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" location="Custom" logFileCreationSchedule="Daily" traceOutputOptions="DateTime" autoFlush="True" customLocation="C:\Program Files\AD Sync\Logs" maxFileSize="20971520" reserveDiskSpace="1073741824"> <filter type="System.Diagnostics.EventTypeFilter" initializeData="ActivityTracing,Information"/> </add>
Где
Атрибут | Описание |
maxFileSize | Максимальный размер файла журнала в байтах. По умолчанию журналирование прекращается при достижении лимита. |
logFileCreationSchedule | Ротация файла журнала. Возможные значения: None, Daily, Weekly. |
customLocation | Полный путь к папке, в котором будут создаваться файлы логов. Можно указать отдельный диск |
reserveDiskSpace | Минимальное оставшееся место на диске в байтах, прежде чем разрешить запись файлов журнала. По умолчанию запись журнала прекращается при достижении этого предела. |
Рекомендуемые параметры конфигурационного файла AD Sync
Имя значения | Значение | Описание |
UserPollTime | 20 | Немного снижает нагрузку на AD |
UploadPollTime | 20 | Снижает нагрузку на API и SQL-сервер за счет уменьшения частоты выполнения выгрузки. |
LogMask | 65535 | Для более подробного логирования ошибок |
UploadMaxErrors | 5 | Количество попыток синхронизации при возникновении ошибок |
EventLogWatch | True | Использование изменений в AD, записанные в журнал событий. Позволяет синхронизировать только те изменения, которые включены в набор свойств объекта AD, что приводит к меньшему количеству вызовов API и повышению производительности в целом. |
UserAttributesSyncOnChange | True | Синхронизация только измененных атрибутов пользователя AD |
ContactAttributesSyncOnChange | True | Синхронизация только измененных атрибутов контакта AD |
GroupAttributesSyncOnChange | True | Синхронизация только измененных атрибутов группы AD |
MaxGetStatusTries | 5 | Обнаруживает объекты в состоянии подготовки и перезапускает синхронизацию |
ThrottleUploads | True | Включает ограничение количества измененных объектов в очереди на синхронизацию. Повышает производительность и снижает нагрузки на серверы API/SQL. |
ThrottleLimit | 50-100 | Количество элементов в очереди на синхронизацию |
BatchUploads | True | Если в синхронизируемой группе большое количество объектов этот параметр позволит разделить объекты на очереди что позволит снизить нагрузку на API |
UploadBatchSize | 50 | Количество элементов, отправляемых в одном запросе. (к элементу выше) |
MaxResubmits | 5 | Количество попыток повторной отправки элементов группы, если члены группы не смогли их отправить. Если это значение не задано, группа будет повторяться бесконечно. |