Préparer des boîtes aux lettres pour des déplacements inter-forêts

Préparer des boîtes aux lettres pour des déplacements inter-forêts à l’aide du script Prepare-MoveRequest.ps1 dans l’environnement de ligne de commande Exchange Management Shell

Ce sujet n’a pas encore été évalué Évaluez ce sujet

 

S’applique à : Exchange Server 2010 SP2

 

Dernière rubrique modifiée : 2011-04-20

 

Microsoft Exchange Server 2010 prend en charge un déplacement de boîte aux lettres en ligne à l’aide de la cmdlet New-MoveRequest. Vous pouvez déplacer une boîte aux lettres depuis une forêt Exchange source vers une forêt Exchange 2010 cible.

 

Pour exécuter la cmdlet New-MoveRequest, un utilisateur de messagerie doit exister dans la forêt Exchange cible et disposer d’un ensemble d’attributs Active Directory obligatoires minimum.

 

Le script Windows PowerShell décrit en exemple dans cette rubrique prend en charge cette tâche en synchronisant les utilisateurs de boîtes aux lettres d’une forêt source Exchange 2010, Exchange Server 2007 ou Exchange Server 2003 avec des forêts cibles Exchange 2010 en tant qu’utilisateurs à extension messagerie. Le script copie les attributs Active Directory des utilisateurs de boîtes aux lettres de la forêt source vers la forêt cible, puis utilise la cmdlet Update-Recipient pour changer les objets cibles en utilisateurs à extension messagerie.

 

Pour plus d’informations sur l’utilisation et l’écriture de scripts, voir Scripts dans Exchange Management Shell. Pour plus d’informations sur la préparation pour les déplacements inter-forêts, voir Préparer les boîtes aux lettres pour les demandes de déplacement inter-forêts.

 

Souhaitez-vous rechercher les autres tâches de gestion relatives aux demandes de déplacement à distance ? Consultez la rubrique Gestion des demandes de déplacement à distance.

 

  • Localisez le script à l’emplacement suivant : Program FilesMicrosoftExchange ServerV14Scripts.
  • Pour exécuter l’exemple de script, vous avez besoin des éléments suivants :
    • Une forêt source exécutant Exchange 2010, Exchange 2007 ou Exchange 2003, à l’endroit où la boîte aux lettres réside actuellement.
    • Une forêt cible dans laquelle Exchange 2010 est installé, à l’endroit où la boîte aux lettres sera déplacée.

Exécutez le script depuis l’environnement de ligne de commande sur un rôle serveur exécutant Exchange 2010 dans la forêt Exchange 2010 cible. Le script copie les attributs de boîte aux lettres à partir de la forêt source.

Pour affecter des informations spécifiques d’identification d’authentification pour le contrôleur de domaine de forêt distant, vous devez tout d’abord exécuter la cmdlet Windows PowerShell Get-Credential, puis stocker l’entrée de l’utilisateur dans une variable temporaire. Lorsque vous exécutez la cmdlet Get-Credential, celle-ci demande le nom d’utilisateur et le mot de passe du compte utilisé durant l’authentification auprès du contrôleur de domaine de forêt distant. Vous pouvez ensuite utiliser la variable temporaire dans le script Prepare-MoveRequest.ps1. Pour plus d’informations à propos de la cmdlet Get-Credential, voir Get-Credential.

Ee861103.note(fr-FR,EXCHG.141).gifRemarque :
Assurez-vous d’utiliser deux informations d’identification distinctes pour la forêt locale et la forêt distante lors de l’appel de ce script.

Exécutez d’abord les commandes permettant d’obtenir les informations d’identification pour la forêt locale et la forêt distante.

$LocalCredentials = Get-Credential
$RemoteCredentials = Get-Credential

Exécutez ensuite les commandes pour transmettre les informations d’identification aux paramètres LocalForestCredential et RemoteForestCredential dans le script Prepare-MoveRequest.ps1.

Prepare-MoveRequest.ps1 -Identity JohnSmith@Fabrikan.com -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $RemoteCredentials -LocalForestDomainController DC001.Contoso.com -LocalForestCredential $LocalCredentials

Le tableau suivant décrit l’ensemble des paramètres associés au script.

Ensemble de paramètres du script Prepare-MoveRequest.ps1

Paramètre Obligatoire Description
Identity Obligatoire Le paramètre Identity identifie de façon unique une boîte aux lettres dans la forêt source. L’identité peut être :

  • Nom commun (CN)
  • Alias
  • Propriété proxyAddress
  • Propriété objectGuid
  • Propriété DisplayName
RemoteForestCredential Obligatoire Le paramètre RemoteForestCredential spécifie l’administrateur ayant les autorisations de copier des données depuis le Active Directory de la forêt source.
RemoteForestDomainController Obligatoire Le paramètre RemoteForestDomainController spécifie un contrôleur de domaine dans la forêt source où réside la boîte aux lettres.
DisableEmailAddressPolicy Facultatif Le paramètre DisableEmailAddressPolicy spécifie si le protocole EAP (Email Address Policy) doit être désactivé à la création d’un objet MailUser dans la forêt cible.

Lorsque vous spécifiez ce paramètre, l’EAP dans la forêt cible ne sera pas appliqué.

Ee861103.note(fr-FR,EXCHG.141).gifRemarque :
Lorsque vous spécifiez ce paramètre, l’objet MailUser n’aura pas de mappage d’adresse de messagerie dans le domaine de forêt locale identifié. Ceci est généralement identifié par l’EAP.
LinkedMailUser Facultatif Le commutateur LinkedMailUser permet de créer un utilisateur de messagerie lié dans la forêt locale pour l’utilisateur de boîte aux lettres dans la forêt distante.

Si le commutateur est fourni, le script crée un objet MailUser cible lié à la boîte aux lettres source. Si le commutateur est omis, le script crée un objet MailUser cible ordinaire. Pour plus d’informations, voir Créer une boîte aux lettres liée.

LocalForestCredential Facultatif Le paramètre LocalForestCredential spécifie l’administrateur ayant les autorisations d’écrire des données vers le Active Directory de la forêt cible.

Il est conseillé de spécifier explicitement ce paramètre pour éviter les problèmes d’autorisation Active Directory.

Si une relation d’approbation est configurée sur la forêt distante et la forêt locale, n’utilisez pas de compte utilisateur de la forêt distante en tant qu’information d’identification de forêt locale, même si l’utilisateur distant pourrait avoir l’autorisation de modifier Active Directory dans la forêt locale.

LocalForestDomainController Facultatif Le paramètre LocalForestDomainController spécifie un contrôleur de domaine dans la forêt cible où l’utilisateur à extension messagerie sera créé.

Il est conseillé de spécifier ce paramètre pour éviter les éventuels problèmes de retard de réplication de contrôleur de domaine dans la forêt locale qui pourraient se produire si un contrôleur de domaine aléatoire est sélectionné.

MailboxDeliveryDomain Facultatif Le paramètre MailboxDeliveryDomain spécifie un domaine faisant autorité de la forêt source pour que le script puisse sélectionner la bonne propriété proxyAddress de l’utilisateur de boîte aux lettres source comme propriété targetAddress de l’utilisateur à extension messagerie cible.

Par défaut, l’adresse SMTP principale de l’utilisateur de boîte aux lettres source est définie comme la propriété targetAddress de l’utilisateur à extension messagerie cible.

OverWriteLocalObject Facultatif Le paramètre OverWriteLocalObject est utilisé pour les utilisateurs créés par l’outil de migration Active Directory. Les propriétés sont copiées du contact de messagerie existant dans le nouvel utilisateur de messagerie. Cependant, une fois cette copie effectuée, le script copie également les propriétés de l’utilisateur de forêt source dans le nouvel utilisateur de messagerie.
TargetMailUserOU Facultatif Le paramètre TargetMailuserOU spécifie l’unité d’organisation (OU) sous laquelle l’utilisateur à extension messagerie cible sera créé.
UseLocalObject Facultatif Le paramètre UseLocalObject spécifie s’il faut convertir l’objet local existant en utilisateur à extension messagerie cible obligatoire si le script détecte un objet dans la forêt locale qui entre en conflit avec l’utilisateur à extension messagerie à créer.

Cette section contient plusieurs exemples d’utilisation du script Prepare-MoveRequest.ps1.

Cet exemple fournit un seul utilisateur à extension messagerie lié dans la forêt locale, lorsqu’il y a une approbation forêt entre la forêt distante et la forêt locale.

Exécutez d’abord les commandes permettant d’obtenir les informations d’identification pour la forêt locale et la forêt distante.

$LocalCredentials = Get-Credential
$RemoteCredentials = Get-Credential

Exécutez ensuite la commande pour transmettre les informations d’identification aux paramètres LocalForestCredential et RemoteForestCredential dans le script Prepare-MoveRequest.ps1.

Prepare-MoveRequest.ps1 -Identity JamesAlvord@Contoso.com -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $RemoteCredentials -LocalForestDomainController DC001.Contoso.com -LocalForestCredential $LocalCredentials -LinkedMailUser

Cet exemple prend en charge le traitement en pipeline si vous fournissez une liste des identités de boîtes aux lettres.

Commencez par exécuter la commande suivante.

$UserCredentials = Get-Credential

Exécutez ensuite la commande pour transmettre les informations d’identification au paramètre RemoteForestCredential dans le script Prepare-MoveRequest.ps1.

"IanP@Contoso.com", "JoeAn@Contoso.com" | Prepare-MoveRequest.ps1 -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $UserCredentials

Vous pouvez générer un fichier CSV contenant une liste des identités de boîtes aux lettres de la forêt source, qui vous permet de canaliser le contenu de ce fichier dans le script pour créer en bloc des utilisateurs à extension messagerie cible.

Par exemple, le contenu du fichier CSV peut être :

Identity

Ian@contoso.com

John@contoso.com

Cindy@contoso.com

Cet exemple appelle un fichier CSV pour créer en bloc les utilisateurs à extension messagerie cible.

Exécutez d’abord la commande permettant d’obtenir les informations d’identification pour la forêt distante.

$UserCredentials = Get-Credential

Exécutez ensuite la commande pour transmettre les informations d’identification au paramètre RemoteForestCredential dans le script Prepare-MoveRequest.ps1.

Import-Csv Test.csv | Prepare-MoveRequest.ps1 -RemoteForestDomainController DC001.Fabrikam.com -RemoteForestCredential $UserCredentials

 

Cette section décrit la façon dont le script s’exécute par rapport aux scénarios suivants pour les objets cible :

 

  • Objet à extension messagerie cible en double
  • Utilisateur à extension messagerie
  • Contact à extension messagerie
  • Attribut LegacyExchangeDN

 

Lorsque le script tente de créer un utilisateur à extension messagerie cible depuis l’utilisateur de boîte aux lettres source et qu’il détecte un objet à extension messagerie local en double, il utilise la logique suivante :

  • Si l’attribut masterAccountSid de l’utilisateur de la boîte aux lettres source équivaut à l’attribut objectSid ou masterAccountSid de l’objet cible :
    • Si l’objet cible n’est pas à extension messagerie, le script renvoie une erreur car il ne prend pas en charge la conversion d’un objet qui n’est pas à extension messagerie en un utilisateur à extension messagerie.
    • Si l’objet cible est à extension messagerie, l’objet cible est un doublon.
  • Si une adresse des propriétés proxyAddress (smtp/x500 seulement) de l’utilisateur de boîtes aux lettres source équivaut à une adresse des propriétés proxyAddress (smtp/x500 seulement) d’un objet cible, alors l’objet cible est un doublon.

Le script interroge l’utilisateur sur les objets en double.

Si l’objet à extension messagerie cible est un utilisateur ou un contact à extension messagerie, qui est très probablement créé par un déploiement de la synchronisation de la liste d’adresses globale inter-forêts (basé sur Identity Lifecycle Management 2007 Service Pack 1), l’utilisateur peut à nouveau exécuter le script avec le paramètre UseLocalObject pour utiliser l’objet à extension messagerie cible pour la migration de boîtes aux lettres.

 

Si l’objet cible est un utilisateur à extension messagerie, le script copie les attributs suivants de l’utilisateur de boîte aux lettres source vers l’utilisateur à extension messagerie cible :

  • msExchMailboxGUID
  • msExchArchiveGUID
  • msExchArchiveName

Si le paramètre LinkedMailUser est défini, le script copie l’attribut objectSid/masterAccountSid source.

 

Si l’objet cible est un contact à extension messagerie, le script supprime le contact existant et copie l’ensemble de ses attributs vers un nouvel utilisateur à extension messagerie. Le script copie également les attributs suivants à partir de l’utilisateur de boîte aux lettres source :

  • msExchMailboxGUID
  • msExchArchiveGUID
  • msExchArchiveName
  • sAMAccountName
  • userAccountControl (défini sur 514 //équivalent à 0x202, ACCOUNTDISABLE | NORMAL_ACCOUNT)
  • userPrincipalName

Si le paramètre LinkedMailUser est défini, le script copie l’attribut objectSid/masterAccountSid source.

 

Lorsque la cmdlet Update-Recipient est appelée pour convertir l’objet cible en un utilisateur à extension messagerie, un nouvel attribut LegacyExchangeDN est généré pour l’utilisateur à extension messagerie cible. Le script copie l’attribut LegacyExchangeDN de l’utilisateur à extension messagerie cible sous forme d’adresse x500 vers les propriétés proxyAddress de l’utilisateur de boîte aux lettres source. Cette action assure la bonne résolution des destinataires lorsque les messages sont envoyés entre les forêts source et cible