Использование скрипта RollAlternateserviceAccountCredential.ps1 в консоли

Область применения: Exchange Server 2013 г.

Скрипт RollAlternateServiceAccountPassword.ps1 в Exchange Server 2013 можно использовать для обновления учетных данных альтернативной учетной записи службы (учетные данные ASA) и распространения обновления на указанные серверы клиентского доступа.

Примечание.

Сценарии не загружаются в командную консоль Exchange автоматически. Перед всеми скриптами необходимо указать .\ Например, чтобы запустить скрипт RollAlternateServiceAccountPassword.ps1, введите .\RollAlternateServiceAccountPassword.ps1.

Это сценарий имеется только на английском языке.

Дополнительные сведения об использовании и записи сценариев см. в разделе Scripting with the Exchange Management Shell.

Синтаксис

RollAlternateServiceAccountPassword.ps1 -Scope <Object> -Identity <Object> -Source <Object> -

Подробное описание

Для выполнения этой процедуры (процедур) необходимы соответствующие разрешения. Сведения о необходимых разрешениях см. в записи "Безопасность доступа клиента" в разделе Разрешения клиентского доступа.

Технические сведения о сценарии для учетных данных альтернативной учетной записи службы

Этот сценарий упрощает установку и обслуживание учетных данных ASA. После создания учетных данных ASA и установки соответствующих имен участников служб можно использовать этот сценарий для распространения учетных данных на все целевые серверы клиентского доступа.

Чтобы использовать этот сценарий, необходимо определить целевые серверы и учетные данные альтернативной учетной записи службы.

Область сервера

Для сценария в качестве целевого объекта можно выбрать все серверы клиентского доступа в лесу, все члены определенного массива серверов клиентского доступа или определенные серверы. Доступные параметры : ToEntireForest, ToArraryMembers и ToSpecificServers. Если в качестве целевого объекта для сценария выбраны определенные серверы или члены определенного массива серверов, то в параметре Identity необходимо указать имена целевых серверов или массива серверов.

Источник учетных данных

Этот сценарий позволяет копировать пароль альтернативной учетной записи службы с существующего сервера. Or, you can specify the account you want to use and let the script generate a new password for the account. Доступные параметры : GenerateNewPasswordFor и CopyFrom. Для параметра GenerateNewPasswordFor необходимо указать строку учетной записи в следующем формате: DOMAIN\Account Name. If you're using a computer account, you need to append "$" at the end of the account name, for example CONTOSO\ClientServerAcct$. Параметр CopyFrom использует имя существующего сервера клиентского доступа в качестве источника учетных данных.

Создание нового пароля для учетных данных

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

Этот новый пароль длиной 73 символа соответствует стандартным требованиям к надежному паролю. Если действуют пользовательские требования к паролю, необходимо установить пароль вручную, а затем скопировать его на целевые серверы.

Для предотвращения прерывания работы служб сценарий проверяет каждый сервер клиентского доступа и поддерживает использование текущего пароля во время добавления нового пароля. После запуска сценария общие учетные данные ASA поддерживают использование одного из 2 паролей: текущего пароля, сохраненного в службе каталогов Active Directory, или нового пароля, еще не установленного в службе Active Directory.

Все недопустимые пароли, например устаревшие, будут удалены с серверов назначения. Если пароль в службе каталогов Active Directory невозможно изменить, например из-за истечения срока действия пароля, сценарий выполнит смену пароля. Для этого необходимо, чтобы учетная запись, с помощью которой запущен сценарий, имела разрешения на сброс паролей учетных записей компьютеров или пользователей Active Directory (в зависимости от того, является ли альтернативная учетная запись службы учетной записью компьютера или пользователя).

Если не удалось успешно изменить пароли для всех целевых серверов клиентского доступа, обновление пароля Active Directory может привести к ошибке при проверке подлинности. Если сценарий запущен в автоматическом режиме, он не сможет обновить пароль Active Directory с помощью нового пароля до тех пор, пока все целевые серверы клиентского доступа не будут успешно обновлены. При запуске сценария в режиме с сопровождением отобразится запрос о необходимости обновления пароля в службе каталогов Active Directory.

Создание запланированной задачи по автоматическому обслуживанию пароля

Чтобы сценарий создал запланированную задачу по обслуживанию пароля на постоянной основе, используйте параметр CreateScheduledTask. В этом параметре необходимо указать строку с именем создаваемой задачи.

Примечание.

Запустите сценарий и перед созданием автоматической запланированной задачи убедитесь, что он правильно работает в режиме с сопровождением.

Сценарий создает файл CMD в папке, в которой расположен сценарий. Затем он создает задачу по запуску этого файла CMD через каждые три недели. Можно использовать планировщик заданий Windows, чтобы изменить запланированную задачу, например увеличить или уменьшить для нее периодичность запуска. По умолчанию задача будет выполняться с помощью учетной записи пользователя, вошедшего в систему в данный момент. Также сценарий будет выполняться только при входе этого пользователя в систему. Рекомендуется назначить выполнение запланированной задачи независимо от входа пользователя в систему. Также можно определить для нее выполнение с помощью другой учетной записи, имеющей разрешения Active Directory на сброс пароля и роль администратора предприятия Exchange. При создании запланированной задачи сценарий автоматически запускается в автоматическом режиме.

Задачи вне области сценария

Сценарий не будет управлять именами участников служб учетных данных ASA и не позволит удалить альтернативную учетную запись службы с сервера. Сведения об удалении альтернативной учетной записи службы с сервера см. в разделе Отключение проверки подлинности Kerberosстатьи Настройка проверки подлинности Kerberos для серверов клиентского доступа с балансировкой нагрузки.

Устранение неполадок в сценарии

Рекомендуется запустить сценарий и перед созданием автоматической запланированной задачи убедиться, что он правильно работает в режиме с сопровождением. Сведения по устранению неполадок см. в разделе Troubleshooting the RollAlternateServiceAccountCredential.ps1 Script.

Проверка сценария

Выходные данные сценария при его запуске в интерактивном режиме с флагом -verbose должны указывать на успешное выполнение операций сценария. Чтобы убедиться в успешном обновлении серверов клиентского доступа, можно проверить отметку времени последнего изменения учетных данных ASA. В следующем примере создается список серверов клиентского доступа и отметка времени последнего обновления альтернативной учетной записи службы.

Get-ClientAccessServer -IncludeAlternateServiceAccountCredentialstatus |Fl Name, AlternateServiceAccountConfiguration

Также можно проверить журнал событий на компьютере, на котором запущен сценарий. Записи журнала событий для сценария хранятся в журнале событий приложений и создаются параметром MSExchange Management Application. Следующая таблица содержит список событий, которые заносятся в журнал, и описания этих событий.

Коды событий сценария и их пояснения

Событие Объяснение
14001 Начало
14002 Успешно (сведения)
14003 Успешно, но с предупреждениями.

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

Если сценарий запущен как запланированная задача, его результаты заносятся в журнал, расположенный в папке Logging сервера Exchange во вложенной папке RollAlternateServiceAccountPassword.

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

Параметры

Параметр Обязательный Описание
ToEntireForest Необязательный Параметр ToEntireForest предназначен для всех серверов клиентского доступа в лесу.
ToArrayMembers Необязательный Параметр ToArrayMembers предназначен для скрипта для всех членов определенного массива серверов клиентского доступа.

Примечание. Если вы используете параметр ToArrayMembers или ToSpecificServers , необходимо указать имена серверов или серверных массивов с помощью параметра Identity .
ToSpecificServers Необязательный Параметр ToSpecificServers предназначен для скрипта для определенных серверов.

Примечание. Если вы используете параметр ToArrayMembers или ToSpecificServers , необходимо указать имена серверов или серверных массивов с помощью параметра Identity .
Identity Обязательный Параметр Identity указывает имя массива серверов клиентского доступа или имена конкретных серверов, на которые вы ориентируетесь.
GenerateNewPasswordFor string<> Необязательный Параметр GenerateNewPasswordFor указывает, что скрипт должен создать новый пароль для ASA. The string value need to be the ASA account in the following format: DOMAIN\Account Name. If you're using a computer account, you need to append the $ character at the end of the account name.
CopyFrom<string> Необязательный Параметр CopyFrom указывает, что учетные данные копируются с другого сервера клиентского доступа. В качестве значения строки указывается имя сервера клиентского доступа.
Mode Необязательный Переключатель Режим указывает, выполняется ли скрипт в режиме хвачений или в автоматическом режиме. В автоматическом режиме запрос ввода данных пользователем не отображается и при необходимости выполняется автоматический выбор параметров по умолчанию.
Строка CreateScheduledTask<> Необязательный Параметр CreateScheduledTask указывает скрипту создать запланированную задачу для обновления учетных данных ASA. В качестве значения строки указывается имя запланированной задачи, которую необходимо создать.

Примечание. Этот скрипт создает CMD-файл в папке, в которой находится скрипт. Запланированная задача будет запускать этот файл CMD через каждые три недели. Эту задачу можно изменить непосредственно в планировщике заданий Windows, например изменить периодичность выполнения задачи.
Whatif Необязательный Параметр WhatIf указывает команде, чтобы имитировать действия, которые она будет выполнять с объектом. С помощью параметра WhatIf можно просмотреть, какие изменения произойдут, не применяя какие-либо из этих изменений. Вам не нужно указывать значение с помощью параметра WhatIf .
Подтвердить Необязательный Параметр Confirm приостанавливает выполнение команды и требует задать ее действие, чтобы выполнение продолжилось. Значение параметра Confirm указывать не обязательно.
Verbose Необязательный Параметр Verbose указывает скрипту выполнить подробное ведение журнала, поэтому дополнительные сведения о действиях скрипта записываются в файл журнала.
Debug Необязательный Параметр Debug указывает скрипту выполняться в режиме отладки. Этот параметр необходимо использовать для определения причины сбоя сценария.

Примеры

Пример 1

В этом примере используется сценарий по отправке учетных данных на все серверы клиентского доступа в лесу для первой установки.

.\RollAlternateserviceAccountPassword.ps1 -ToEntireForest -GenerateNewPasswordFor "Contoso\ComputerAccount$" -Verbose

Пример 2

В этом примере показано, как создать новый пароль для учетных данных ASA учетной записи пользователя и распространить его на все члены массивов серверов клиентского доступа, имя которых соответствует *mailbox*.

.\RollAlternateserviceAccountPassword.ps1 -ToArrayMembers _mailbox_ -GenerateNewPasswordFor "Contoso\UserAccount" -Verbose

Пример 3

В этом примере показано, как создать расписание запланированной задачи по автоматическому переключению паролей, выполняемому один раз в месяц, с именем «Exchange-RollAsa». Эта задача будет обновлять учетные данные ASA для всех серверов клиентского доступа во всем лесу с помощью нового пароля, созданного сценарием. Запланированная задача создана, но сценарий не запущен. При выполнении запланированной задачи сценарий запускается в автоматическом режиме.

.\RollAlternateServiceAccountPassword.ps1 -CreateScheduledTask "Exchange-RollAsa" -ToEntireForest -GenerateNewPasswordFor 'contoso\computerAccount$'

Пример 4

В этом примере показано, как обновить учетные данные ASA для всех серверов клиентского доступа в массиве таких серверов с именем CAS01. Они получают учетные данные из учетной записи компьютера Active Directory с именем ServiceAc1 в домене Contoso.

.\RollAlternateserviceAccountPassword.ps1 -ToArrayMembers "CAS01" -GenerateNewPasswordFor "CONTOSO\ServiceAc1$"

Пример 5

В этом примере показано, как с помощью сценария распространить учетные данные ASA на новый компьютер или на существующий компьютер, вводимый в эксплуатацию в связи с увеличением размера массива серверов или с повторным добавлением членов массива после обслуживания.

Необходимо обновить учетные данные ASA, прежде чем сервер клиентского доступа получит трафик. Скопируйте общие учетные данные ASA с любого сервера клиентского доступа, который уже настроен правильно. Например, если сервер A в настоящее время имеет рабочие учетные данные ASA и вы только что добавили сервер B в массив, можно с помощью скрипта скопировать учетные данные (включая пароль) с сервера A на сервер B. Это полезно, если сервер B не был членом массива при накате пароля в последний раз.

.\RollAlternateServiceAccountPassword.ps1 -CopyFrom ServerA -ToSpecificServers ServerB -Verbose