Применимо к: Exchange Server 2010 SP1

Последнее изменение раздела: 2011-03-29

Система Microsoft Exchange Server 2010 поддерживает перемещение почтового ящика в оперативном режиме с помощью командлета New-MoveRequest. Можно переместить почтовый ящик из исходного леса Exchange в целевой лес Exchange 2010.

Для запуска командлета New-MoveRequest пользователь почты должен существовать в целевом лесу Exchange и иметь минимальный набор обязательных атрибутов Служба каталогов Active Directory.

Пример сценария Windows PowerShell, приведенный в этом разделе, соответствует этому требованию благодаря синхронизации пользователей почтовых ящиков с включенной поддержкой почты в исходных лесах Exchange 2010, Exchange Server 2007 или Exchange Server 2003 с пользователями в целевых лесах Exchange 2010. По этому сценарию выполняется копирование атрибутов Служба каталогов Active Directory пользователей почтовых ящиков в исходном лесу в целевой лес, а затем используется командлет Update-Recipient для преобразования целевых объектов в пользователей с включенной поддержкой почты.

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

Необходимы сведения о других задачах управления, связанных с удаленными запросами на перемещение? См. раздел Управление запросами на удаленное перемещение.

Предварительные условия

  • Найдите сценарий в следующей папке: Program Files\Microsoft\Exchange Server\V14\Scripts.

  • Для выполнения этого примера сценария необходимы следующие компоненты:

    • Исходный лес под управлением Exchange 2010, Exchange 2007 или Exchange 2003, в котором размещен почтовый ящик.

    • Целевой лес с установленной системой Exchange 2010, в который необходимо переместить почтовый ящик.

Использование сценария Prepare-MoveRequest.ps1 для подготовки почтовых ящиков к перемещениям между лесами

Запустите этот сценарий в командной консоли для роли сервера под управлением Exchange 2010 в целевом лесу Exchange 2010. Сценарий выполнит копирование атрибутов почтового ящика из исходного леса.

Чтобы назначить учетные данные для проверки подлинности для контроллера домена удаленного леса, необходимо предварительно выполнить командлет Windows PowerShell Get-Credential и сохранить введенные пользователем данные во временной переменной. При выполнении командлета Get-Credential он запрашивает имя пользователя и пароль учетной записи, используемой при проверке подлинности на контроллере домена удаленного леса. Затем можно использовать временную переменную в сценарии Prepare-MoveRequest.ps1. Дополнительные сведения о командлете Get-Credential см. в разделе Get-Credential.

Примечание.
Убедитесь, что при вызове этого сценария для локального и удаленного лесов используются различные учетные данные.

Сначала выполните следующие команды, чтобы получить учетные данные локального и удаленного лесов.

Скопировать код
$LocalCredentials = Get-Credential
$RemoteCredentials = Get-Credential

Затем выполните следующие команды, чтобы передать эти учетные данные в параметры LocalForestCredential и RemoteForestCredential в сценарии Prepare-MoveRequest.ps1.

Скопировать код
Prepare-MoveRequest.ps1 -Identity JohnSmith@Fabrikan.com -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $RemoteCredentials -LocalForestDomainController DC001.Contoso.com -LocalForestCredential $LocalCredentials

В следующей таблице указан набор параметров для этого сценария.

Набор параметров для сценария Prepare-MoveRequest.ps1

Параметр Обязательный Описание

Identity

Обязательный

Параметр Identity уникальным образом идентифицирует почтовый ящик в исходном лесу. Идентификатором может быть:

  • Общее имя (CN)

  • Alias

  • Свойство proxyAddress

  • Свойство objectGuid

  • Свойство DisplayName

RemoteForestCredential

Обязательный

Параметр RemoteForestCredential указывает администратора, который имеет разрешения на копирование данных из службы каталогов Служба каталогов Active Directory исходного леса.

RemoteForestDomainController

Обязательный

Параметр RemoteForestDomainController указывает контроллер домена в исходном лесу, в котором размещен почтовый ящик.

DisableEmailAddressPolicy

Необязательный

Параметр DisableEmailAddressPolicy указывает, требуется ли отключать политику адресов электронной почты (EAP) при создании объекта MailUser в целевом лесу.

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

Примечание.
При указании этого параметра объект MailUser не будет отмечен с помощью сопоставления адресов электронной почты в домене локального леса. Обычно он отмечается с помощью политики адресов электронной почты.

LinkedMailUser

Необязательный

Параметр LinkedMailUser указывает, необходимо ли создать связанный объект MailUser в локальном лесу для пользователя почтового ящика в удаленном лесу.

При указании этого параметра согласно сценарию создается целевой объект MailUser, связанный с исходным почтовым ящиком. Если этот параметр не указан, то по сценарию создается обычный целевой объект MailUser. Дополнительные сведения см. в разделе Создание связанного почтового ящика.

LocalForestCredential

Необязательный

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

Рекомендуется указать этот параметр явным образом, чтобы избежать проблем с разрешениями Служба каталогов Active Directory.

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

LocalForestDomainController

Необязательный

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

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

MailboxDeliveryDomain

Необязательный

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

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

OverWriteLocalObject

Необязательный

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

TargetMailUserOU

Необязательный

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

UseLocalObject

Необязательный

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

Примеры

В этом разделе приведено несколько примеров возможного использования сценария Prepare-MoveRequest.ps1.

Пример 1

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

В первую очередь выполните следующие команды, чтобы получить учетные данные локального и удаленного лесов.

Скопировать код
$LocalCredentials = Get-Credential
$RemoteCredentials = Get-Credential

Затем выполните следующую команду, чтобы передать эти учетные данные в параметры LocalForestCredential и RemoteForestCredential в сценарии Prepare-MoveRequest.ps1.

Скопировать код
Prepare-MoveRequest.ps1 -Identity JamesAlvord@Contoso.com -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $RemoteCredentials -LocalForestDomainController DC001.Contoso.com -LocalForestCredential $LocalCredentials -LinkedMailUser 

Пример 2

В этом примере иллюстрируется поддержка конвейерного режима при указании списка идентификаторов почтового ящика.

В первую очередь выполните следующую команду:

Скопировать код
$UserCredentials = Get-Credential

Затем выполните следующую команду, чтобы передать эти учетные данные в параметр RemoteForestCredential в сценарии Prepare-MoveRequest.ps1.

Скопировать код
"IanP@Contoso.com", "JoeAn@Contoso.com" | Prepare-MoveRequest.ps1 -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $UserCredentials

Пример 3

Можно создать файл CSV, содержащий список идентификаторов почтовых ящиков из исходного леса, который позволит передавать по конвейеру содержимое этого файла в сценарий для массового создания целевых пользователей с включенной поддержкой почты.

Например, файл CSV может иметь следующее содержимое:

Параметр Identity (идентификатор)

Ian@contoso.com

John@contoso.com

Cindy@contoso.com

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

Сначала выполните следующую команду, чтобы получить учетные данные удаленного леса.

Скопировать код
$UserCredentials = Get-Credential

Затем выполните следующую команду, чтобы передать эти учетные данные в параметр RemoteForestCredential в сценарии Prepare-MoveRequest.ps1.

Скопировать код
Import-Csv Test.csv | Prepare-MoveRequest.ps1 -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $UserCredentials

Поведение сценария для целевого объекта

В этом разделе описано поведение сценария при его выполнении со следующими сценариями для целевых объектов.

  • Дублирование целевого объекта с включенной поддержкой почты

  • Пользователь с включенной поддержкой почты

  • Контакт с включенной поддержкой почты

  • Атрибут LegacyExchangeDN

Дублирование целевого объекта с включенной поддержкой почты

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

  • Если атрибут masterAccountSid пользователя исходного почтового ящика соответствует какому-либо атрибуту objectSid или masterAccountSid целевого объекта, то:

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

    • Если для целевого объекта включена поддержка почты, он является дубликатом.

  • Если адрес в свойствах proxyAddress (только smtp/x500) пользователя исходного почтового ящика соответствует адресу в свойствах proxyAddress (только smtp/x500) целевого объекта, то целевой объект является дубликатом.

Сценарий запрашивает пользователя о дубликатах объектов.

Если целевой объект с включенной поддержкой почты является пользователем или контактом с включенной поддержкой почты, созданным, по всей вероятности, при развертывании синхронизации глобального списка адресов (GAL) между лесами (на основе Identity Lifecycle Management 2007 с пакетом обновления 1 (SP1)), то пользователь может повторно запустить сценарий с параметром UseLocalObject, чтобы использовать целевой объект с включенной поддержкой почты для миграции почтовых ящиков.

Пользователь с включенной поддержкой почты

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

  • msExchMailboxGUID

  • msExchArchiveGUID

  • msExchArchiveName

Если установлен параметр LinkedMailUser, то согласно сценарию копируется исходный атрибут objectSid или masterAccountSid.

Контакт с включенной поддержкой почты

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

  • msExchMailboxGUID

  • msExchArchiveGUID

  • msExchArchiveName

  • sAMAccountName

  • userAccountControl (значение 514 //равнозначно 0x202, ACCOUNTDISABLE | NORMAL_ACCOUNT)

  • userPrincipalName

Если установлен параметр LinkedMailUser, то согласно сценарию копируется исходный атрибут objectSid или masterAccountSid.

Атрибут LegacyExchangeDN

При вызове командлета Update-Recipient для преобразования целевого объекта в пользователя с включенной поддержкой почты создается новый атрибут LegacyExchangeDN для целевого пользователя с включенной поддержкой почты. В соответствии со сценарием копируется атрибут LegacyExchangeDN целевого пользователя с включенной поддержкой почты в качестве адреса x500 для свойств proxyAddress пользователя исходного почтового ящика. Это процедура обеспечивает правильное разрешение получателей при обмене сообщениями между исходным и целевым лесами.