После установки обновлений на свежий сервер синхронизации Azure AD Sync его потребовалось перезагрузить... и после перезагрузки мониторинг сказал, что синхронизация не работает. Как оказалось, на сервере не стартует служба "Microsoft Azure AD Sync". Ага, подумал я, обновление снесло предыдущие настройки DirSync, щя поменяем учётку и для службы (в домене стоит политика по ограничению возможности запуска служб под сервисными учётками) и запущу её. Нет, сказал AADSync и выдал eventid 6208 (The server encryption keys could not be accessed).
Предварительно я нашел информацию, что сброс пароля локальной учётки AAD_* не поддерживается и вообще: её (локальную учётку) надо добавлять в доменную политику для разрешения запуска служб. Как утверждает официальная документация при установке можно указать другую учётную запись для использования в качестве сервисной, но я обновлялся с DirSync и такой вариант мне не был предложен
Я точно помню, что для DirSync я менял пароль и сервисную учётную запись службы при схожих обстоятельствах, ну а так как под капотом у AADSync стоит старый добрый MIIS, это тоже можно сделать, хотя в официальной документации мне ничего об этом найти не удалось. После гугления по правильным ключевым словам я нашел статью и освежив свою память сделал всё очень быстро:
Первым делом надо сбросить ключи синхронизации. По непонятной причине сделать это из под админа, как я делал это во времена DirSync нельзя. По совету статьи делаем так:
- сбрасывается пароль учётки AAD_*
- добавляем учётку AAD_* в локальные админы и входим под ней (локально или через RDP)
- Запускаем C:\Program Files\Microsoft Azure AD Sync\Bin\miiskmu.exe
- Выбираем abandon the former key, соглашаемся и закрываем всё. С учёткой AAD_* мы закончили, можно её оставить на память. СЛУЖБУ ПОКА НЕ ЗАПУСКАЕМ
- После сброса набора ключей настройки синхронизации остались, потерялись только пароли. Учётка, под которой будет запущена служба Azure AD Sync, зашифрует под себя базу и привяжет это к себе и своему паролю. Заходим на сервер под своей админской учёткой
- Меняем сервисную учётку, из под которой стартует служба Azure AD Sync
- На всякий случай проверяем, что у этой учётки есть Full Control на верку реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AD Sync
- Запускаем службу. Она стартует, но вот синхронизация вряд ли будет работать: надо заново задать пароли синхронизации
- Запускаем "C:\Program Files\Microsoft Azure AD Sync\UIShell\miisclient.exe"
- На вкладке Connectors открываем вкладки с коннекторами и входим в их свойства
- В свойствах коннектора идём в раздел Connectivity и "обновляем" там пароли для подключения к AAD и нашему домену. В облачном коннекторе используется служебная учётка вида Sync_{AADServerName}_*. Я не стал эксперементировать с использованием собственной учётки (хотя это и описано в официальной документации) и сбросил для существующей облачной учётке Sync_* пароль через set-msoluserpassword
- Запускаем Full Import для обоих коннекторов. Смотрим, что в eventlog и в Operations в miisclient, что ошибок нет.
Ура! Мы решили проблему со сбросом и заменой сервисной учётки, всё опять работает в соответствии с корпоративными политиками.
Комментариев нет:
Отправить комментарий