-1

Мой главный вопрос в заголовке. Эта первая часть должна пролить свет на то, почему я спрашиваю.

Я пишу сценарий PowerShell, который значительно облегчит ИТ-отделу предоставление конечным пользователям учетной записи администратора домена для ввода запросов UAC для утвержденных обновлений и установок программного обеспечения.Это не даст их учетной записи больше возможностей, и они не смогут запустить скрипт самостоятельно.

Псевдо-код:

Если временная учетная запись администратора отключена {

  1. Включить временную учетную запись администратора
  2. Сбросить пароль на случайно сгенерированный
  3. Показать пароль для IT Tech (IT технология отправляет UN: Temp_Admin PW: w3ocxf8IP Конечному пользователю)
  4. Сценарий паузы - пока Tech не увидит, что Конечный пользователь закончил
  5. Сбросить учетную запись на новый случайный пароль (не отображается)
  6. Отключить аккаунт

} еще спать 30 секунд - начать снова

У меня есть пара вопросов, прежде чем я реализую это:

Можно ли синхронизировать только учетную запись временного администратора (не все AD) между несколькими контроллерами домена? У нас есть офисы по всей территории США, поэтому я обеспокоен тем, что если учетная запись используется в штате Техас и кто-то в Нью-Йорке пытается ее использовать, все будет испорчено, если учетная запись не синхронизирована.

Предполагая, что этот скрипт часто используется, я просто спрашиваю об ошибках AD или учетной записи, включая / сбрасывая / сбрасывая / отключая пароль и такую учетную запись?

Я гораздо больше программист, чем системный администратор, поэтому я не знаю всех деталей (последствий) в AD.

1 ответ1

0

Чтобы синхронизировать одну учетную запись пользователя в Active Directory, вы можете использовать командлет Sync-ADObject . Чтобы получить все контроллеры домена, вы можете использовать Get-ADGroupMember 'Domain Controllers'. Соединение их выглядит так:

Get-ADGroupMember 'Domain Controllers' | foreach {Sync-ADObject -object 'CN=test user, OU=TestOU, DC=company, DC=com' -source DC1 -Destination $_.name}

Вы можете добавить ;Write-Host "$_.name" между $_.name и фигурной скобкой } чтобы отобразить ход его синхронизации.

На мой другой вопрос ответили, когда я начал играть с рабочим сценарием. Сброс пароля, который часто приводит к тому, что Active Directory блокирует учетную запись. Чтобы избежать этого, используйте командлет:

Unlock-ADAccount -Identity Test.User -ErrorAction Stop

Если что-то пойдет не так с процессом разблокировки, действие ошибки предотвратит продолжение кода.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .