Partager via


Migrations de client à client

La fonctionnalité de migration de client à client vous permet de transférer un environnement d’un client à un autre. Cette fonctionnalité prend en charge des scénarios tels que la fusion de plusieurs locataires en un seul et la facilitation des acquisitions d’entreprises. L’environnement n’est pas réellement déplacé, mais est plutôt lié à un autre client. L’environnement existe toujours mais ne fait plus partie du client source. Il est accessible et géré sous le client de destination. Il n’y a aucune modification de l’interface utilisateur ni aucune modification de la version dans le cadre de ce déplacement.

Avant de commencer

Tenez compte des remarques suivantes avant de commencer une migration de client à client.

  • Types d’environnements pris en charge : production et bac à sable uniquement.
  • Types d’environnement non pris en charge : les types d’environnement par défaut, de développeur, d’évaluation et Teams ne sont pas pris en charge. Le Cloud de la communauté du secteur public (GCC) vers les clouds publics et inversement ne sont pas pris en charge.
  • Les composants non pris en charge comprennent Dynamics 365 Customer Voice, Omnicanal pour Customer Service, la bibliothèque de composants, Dynamics 365 Customer Insights - Journeys et Dynamics 365 Customer Insights - Data.
  • Des étapes spécifiques nécessaires pour Power Apps, Power Automate, Power Pages et Microsoft Copilot Studio sont mentionnées dans les étapes de pré-migration et de post-migration.
  • Une organisation Dataverse liée à une organisation de finances et d’opérations ne peut pas être migrée vers un autre client.
  • Vous devrez peut-être reconfigurer certaines applications et certains paramètres après la migration de client à client, par exemple Microsoft Dynamics 365 for Outlook, la synchronisation côté serveur, SharePoint, etc.
  • Une fois les utilisateurs créés et configurés, vous devez créer un fichier de mappage d’utilisateur, qui est décrit plus loin dans cet article.
  • Si l’utilisateur mappé dispose d’une boîte aux lettres dans le client de destination, la boîte aux lettres est automatiquement configurée pendant la migration. Pour tous les autres utilisateurs, vous devez reconfigurer la boîte aux lettres.
  • Si la même boîte aux lettres est utilisée dans le client cible test@microsoft.com, alors la boîte aux lettres est utilisée par défaut. Avant la migration de client à client, les clients doivent migrer et configurer leurs boîtes aux lettres sur le client cible.
  • Si vous utilisez le domaine onmicrosoft par défaut, test@sourcecompanyname.onmicrosoft.com, le nom de domaine post-migration est modifié en test@targetcompanyname.onmicrosoft.com. Les clients doivent reconfigurer la boîte aux lettres. Pour en savoir plus sur la configuration de la boîte aux lettres, consultez Se connecter à Exchange Online.

Prérequis

Assurez-vous de remplir les conditions préalables suivantes avant de démarrer le processus de migration.

  • Créez des utilisateurs dans le client cible, notamment :
    • Créez des utilisateurs dans Microsoft 365 et Microsoft Entra ID.
    • Attribuer des licences.
  • Vous devez avoir les privilèges d’administrateur de Power Platform ou d’administrateur Dynamics 365 pour effectuer la migration.
  • Le module PowerShell pour les administrateurs Power Platform est le module PowerShell recommandé pour interagir avec les fonctionnalités d’administration. Pour en savoir plus, consultez Prise en main de PowerShell pour les administrateurs Power Platform.

Processus de préparation

Effectuez les procédures suivantes pour Power Automate, Power Apps, Copilot Studio et Power Pages avant la migration. Vous devez également créer un fichier de mappage utilisateur.

Préparer Power Automate

Si vos flux sont déjà définis dans Dataverse, aucun travail supplémentaire n’est nécessaire.

Les flux Power Automate qui doivent être migrés doivent avoir leurs définitions ajoutées aux solutions Dataverse dans l’environnement source. Pour en savoir plus, consultez Ajouter un flux de cloud existant dans une solution. Cette opération peut être effectuée en bloc en exécutant l’applet de commande Add-AdminFlowsToSolution.

Préparer Power Apps

Toutes les Power Apps doivent être exportées manuellement. Nous ne prenons pas en charge la migration des connecteurs, connexions ou passerelles du client. Si l’un de ces composants est configuré, il doit être reconfiguré manuellement après la migration.

Pour les applications compatibles avec les solutions :

  1. Pour les applications compatibles avec les solutions, accédez à Power Apps, naviguez jusqu’à la page Solutions et exportez toutes les applications et solutions. Vous pouvez les exporter individuellement ou les regrouper dans une seule solution, si ce n’est pas déjà fait.

  2. Supprimez ces applications compatibles avec la solution dans l’environnement après les avoir exportées.

  3. Les applications appartenant à des solutions gérées ne peuvent être supprimées qu’en supprimant la solution.

  4. Les applications qui se trouvent dans une solution non gérée peuvent être supprimées à l’aide de l’option Supprimer de cet environnement.

    Important

    Les applications de canevas, les pages personnalisées ou les bibliothèques de composants compatibles avec les solutions que vous ne supprimez pas d’un environnement avant la migration ne fonctionneront pas une fois la migration terminée.

Pour les applications non compatibles avec les solutions :

  1. Accédez à Power Apps, puis sélectionnez Applications.

  2. Pour chaque application que vous souhaitez déplacer, sélectionnez Autres commandes, puis sélectionnez Exporter le package (version préliminaire).

  3. Entrez les détails nécessaires pour effectuer l’exportation de l’application, puis sélectionnez Exporter. Une fois l’exportation terminée, un téléchargement commence.

    Le fichier résultant contient le package d’application sélectionné.

  4. Répétez ces étapes jusqu’à ce que toutes les applications aient été exportées.

  5. Supprimer ces applications non compatibles avec les solutions de l’environnement

Un administrateur peut également afficher ou supprimer des applications canevas de la liste dans le portail d’administration en procédant comme suit.

  1. Accédez au Centre d’administration Power Platform, puis sélectionnez l’environnement dans Gérer.
  2. Sous l’action Ressources, sélectionnez Power Apps pour les afficher et les supprimer.

Préparer Copilot Studio

Les chatbots Copilot Studio doivent être exportés manuellement. Certains composants dépendants des chatbots doivent être reconfigurés manuellement pendant ou après la migration. Par exemple, les connexions, les variables d’environnement et les connecteurs personnalisés doivent être reconfigurés manuellement pendant ou après la migration.

Les chatbots sont compatibles avec les solutions. Accédez à Power Apps, naviguez jusqu’à la page Solutions et exportez toutes les solutions de chatbot, soit individuellement, soit en les regroupant dans une seule solution. Pour en savoir plus, consultez Exporter et importer des bots à l’aide de solutions.

Préparer Power Pages

Les étapes suivantes doivent être effectuées pour chaque site web d’un environnement.

  1. Connectez-vous à l’environnement.
  2. Ouvrez le centre d’administration.
  3. Supprimez le site web.

Créer un fichier de mappage utilisateur

Créez un fichier de mappage utilisateur pour l’environnement source à transférer vers l’environnement cible. Il est essentiel de noter que chaque environnement nécessite un fichier de mappage individuel. Assurez-vous que les utilisateurs sont présents et autorisés dans les locataires d’origine et de destination, car cela est nécessaire pour une migration réussie. Les domaines des utilisateurs peuvent varier entre la source et la cible, à condition qu’ils soient actifs.

  1. Créez un fichier de mappage d’utilisateur nommé usermapping.csv.

    Note

    Le nom du fichier respecte la casse. Assurez-vous que les enregistrements sont séparés par une virgule et non par un point-virgule.

  2. Enregistrez avec précision les détails des utilisateurs, y compris leurs identifiants de messagerie source et de destination. Assurez-vous qu’il n’y a pas d’espace supplémentaire avant et après l’en-tête. Votre fichier de mappage devrait ressembler à l’exemple suivant :

    Valeur Destination
    SourceUser@sourcetenant.com DestinationUser@targettenant.com

Pour les utilisateurs avec accès complet :

  1. Accédez à l’environnement source.

  2. Utilisez la Recherche avancée pour rechercher des utilisateurs.

  3. Sélectionnez Utiliser la vue enregistrée > Utilisateurs avec accès complet, puis sélectionnez Modifier les colonnes.

  4. Supprimez toutes les colonnes à l’exception de la colonne Nom complet.

  5. Sélectionnez Ajouter des colonnes > Windows Live ID.

  6. Sélectionnez OK > Résultats pour voir la liste des utilisateurs avec accès complet.

  7. Sélectionnez tous les enregistrements, sélectionnez Exporter les utilisateurs dans le ruban, puis choisissez Feuille de calcul statique.

  8. Suivez les étapes 1 à 7 ci-dessus pour le client de destination, si possible. Vous devriez maintenant avoir deux feuilles Excel distinctes : une pour la source et une pour le client cible.

  9. Ouvrez les fichiers Excel pour les modifier.

  10. En commençant par la feuille Excel source, copiez les enregistrements sous la colonne Windows Live ID dans le Bloc-notes. Ne copiez pas l’en-tête.

  11. Enregistrez le fichier Bloc-notes.

  12. Entrez l’identifiant Windows Live ID (UPN) de destination dans le même document du bloc-notes, à droite de l’UPN source correspondant. Veillez à séparer les UPN source et de destination par une virgule (,).

    Exemple :

    • user001@source.com, user001@destination.com
    • user002@source.com, user002@destination.com
    • user003@source.com, user003@destination.com
  13. Enregistrez le fichier en tant que CSV.

Pour les utilisateurs avec accès administrateur :

  1. Accédez à l’environnement source.
  2. Utilisez la Recherche avancée pour rechercher des utilisateurs.
  3. Sélectionnez Utiliser la vue enregistrée > Utilisateurs avec accès administrateur, puis sélectionnez Résultats pour voir la liste des utilisateurs avec accès administrateur.
  4. Si vous décidez de n’inclure aucun de ces utilisateurs, ignorez les étapes suivantes. Sinon, pour inclure ces utilisateurs dans le fichier de mappage, procédez comme suit :
    1. Recherchez les utilisateurs correspondants dans le client de destination.
    2. Assurez-vous qu’une licence valide est attribuée à l’utilisateur de destination dans le client de destination.

      Note

      Si aucune licence n’est attribuée à l’utilisateur de destination, la migration échoue.

    3. Enregistrez le fichier CSV auquel sont mappés les utilisateurs avec accès complet et les utilisateurs avec accès administrateur.

Migration

Avant de procéder à la migration, assurez-vous d’avoir examiné et terminé le processus de préparation. Une fois le processus de préparation terminé, complétez les sections suivantes pour migrer.

Installer PowerShell pour les administrateurs Power Platform (à la fois les administrateurs source et cible)

Le module PowerShell pour les administrateurs Power Platform est le module PowerShell recommandé pour interagir avec les fonctionnalités d’administration. Pour obtenir des informations qui vous aident à démarrer avec le module PowerShell pour les administrateurs Power Platform, accédez à Prise en main de PowerShell pour les administrateurs Power Platform et Installation de PowerShell pour les administrateurs Power Platform.

Installez ou mettez à jour le module nécessaire à l’aide de l’une des commandes suivantes :

Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
Update-Module -Name Microsoft.PowerApps.Administration.PowerShell

Installer Azure PowerShell sur Windows (administrateurs source et cible)

Le module Azure PowerShell est un module cumulatif. L’installation du module Azure PowerShell télécharge les modules généralement disponibles et rend leurs applets de commande disponibles. Pour en savoir plus, consultez Installer Azure PowerShell sur Windows.

Utilisez l’applet de commande Install-Module pour installer le module Azure PowerShell :

Install-Module -Name Az -Repository PSGallery -Force

Connectez-vous à Microsoft Power Platform (à la fois les administrateurs source et cible)

Connectez-vous à Microsoft Power Platform. Cette étape permet aux administrateurs de s’authentifier et d’accéder à l’environnement Power Platform.

Add-PowerAppsAccount

Envoyer une demande de migration (administrateur source)

Pour lancer une migration de client à client, l’administrateur Dynamics 365 ou Power Platform du client source doit soumettre une demande au client cible à l’aide de la commande suivante et fournir l’ID du nom de l’environnement et l’ID du client.

Vous devez disposer des informations d’identification de l’administrateur Power Platform ou de l’administrateur Dynamics 365 pour effectuer cette étape.

TenantToTenant-SubmitMigrationRequest –EnvironmentName {EnvironmentId} -TargetTenantID {TenantID}

Vous pouvez afficher le statut et l’ID de migration à l’aide de la commande suivante.

TenantToTenant-ViewMigrationRequest

Note

Enregistrez l’ID de migration, qui est utilisé dans d’autres commandes de migration. Le MigrationID du client source est différent du MigrationID du client de destination

Afficher et approuver la demande de migration (administrateur cible)

L’administrateur du client de destination doit exécuter la commande suivante pour voir toutes les demandes de migration et leur statut. L’administrateur peut passer en revue toutes les demandes de migration et les options à approuver ou à rejeter.

Add-PowerAppsAccount

TenantToTenant-ViewApprovalRequest

TenantToTenant-ManageMigrationRequest -MigrationId {MigrationId from above command to approve or deny}

Une fois qu’une demande est approuvée, l’administrateur du client de destination peut informer l’administrateur du client source de passer à l’étape suivante de la migration.

Générer une URL de signature d’accès partagé (SAS) (source admin)

Cette étape implique la création de l’URL SAS, qui est utilisée ultérieurement pour charger le fichier de mappage utilisateur. Exécutez la commande PowerShell suivante, en remplaçant EnvironmentId par l’ID de l’environnement réel.

GenerateResourceStorage-PowerAppEnvironment –EnvironmentName {EnvironmentId}

Important

Assurez-vous que l’environnement n’est pas en Mode Administrateur et que le rôle Utilisateur de base est attribué à l’utilisateur dans l’environnement.

Exemple de sortie

Code        :
Description :
Headers     :
Error       :
Errors      :
Internal    : @{sharedAccessSignature=https://dynamics.blob.core.windows.net/20240604t000000z73e18df430fe40059290dsddc25d783?sv=2018-03-28&sr=c&si=SASpolicyXXRRRX}

Chargez le fichier de mappage utilisateur (source admin)

L’étape suivante consiste à transférer le fichier de mappage utilisateur vers l’URL SAS précédemment établie. Pour ce faire, exécutez les commandes suivantes dans Windows PowerShell ISE, en vous assurant que les paramètres SASUri et FileToUpload contiennent les informations appropriées concernant votre environnement. Cette étape est cruciale pour charger avec précision le mappage des utilisateurs dans le système.

Note

L’installation du module Azure est nécessaire pour exécuter le script mentionné. Effectuez les étapes suivantes avec Windows PowerShell ISE.

$SASUri ="Update the SAS Uri from previous step”
$Uri = [System.Uri] $SASUri
 
$storageAccountName = $uri.DnsSafeHost.Split(".")[0]
$container = $uri.LocalPath.Substring(1)
$sasToken = $uri.Query
 
# File to upload
# Note that the file name should be usermapping.csv (case sensitive) with comma separated values.
$fileToUpload = 'C:\filelocation\usermapping.csv'
 
# Create a storage context
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName -SasToken $sasToken
 
# Upload the file to Azure Blob Storage
Set-AzStorageBlobContent -File $fileToUpload -Container $container -Context $storageContext -Force

Préparer la migration de l’environnement (administrateur source)

L’étape suivante consiste à effectuer des validations complètes pour s’assurer que chaque utilisateur répertorié dans le fichier de mappage d’utilisateurs est vérifié et actuellement actif dans le client cible.

MigrationId peut être consulté à l’aide de la commande « TenantToTenant-ViewMigrationRequest » dans le locataire source.

TenantToTenant-PrepareMigration 
-MigrationId {MigrationId} 
-TargetTenantId {TargetTenantId} 
-ReadOnlyUserMappingFileContainerUri {SasUri}

Note

Lors de la transmission de la valeur SASUri, vous devez fournir le paramètre comme suit : https://dynamics.blob.core.windows.net/20240604t000000z73e18df430fe40059290dsddc25d783.

Exemple de sortie

Code        : 202
Description : Accepted

La durée de cette étape varie en fonction du nombre d’utilisateurs dans le fichier de mappage d’utilisateurs. Vous pouvez surveiller la progression de cette étape à l’aide de la commande TenantToTenant-GetStatus, fournie ci-dessous.

Vérifier le statut (source admin)

TenantToTenant-GetMigrationStatus -MigrationId {MigrationId}

Exemple de sortie

  • Valider la migration de client à client : En cours d’exécution
  • Valider la migration de client à client : Terminé
  • Échec de la validation, les erreurs sont mises à jour sur le stockage Blob ici : SASURI

Erreurs et comment les résoudre

  • Si vous recevez une erreur indiquant Le fichier de mappage d’utilisateur fourni pour la migration de client à client n’est pas valide, vérifiez si le nom du fichier de mappage d’utilisateur est correct et que le fichier de mappage d’utilisateur contient une virgule pour séparer les valeurs.
  • Les lignes « {numéros de ligne} » ont le même « {emailID} » : assurez-vous qu’il n’y a aucune entrée en double.
  • Format d’e-mail non valide « {emailid} » : assurez-vous que le format d’e-mail est correct pour testuser@tenantdomain.com.
  • La cible sur la ligne « {linenumber} » est identique à l’emailId source : assurez-vous que l’E-mail de destination est différent de l’E-mail source.
  • Chaque ligne doit avoir exactement deux colonnes : « {numéros de ligne} » : assurez-vous que chaque ligne n’a que deux colonnes : les colonnes source et de destination. Supprimez toutes les virgules supplémentaires, le cas échéant.

Après avoir corrigé les erreurs de mappage d’utilisateur, vous devez recharger le fichier de mappage d’utilisateur en utilisant le même URI SAS.

Télécharger le rapport d’erreurs (source admin)

S’il existe des erreurs dans le fichier de mappage utilisateur, il est possible de télécharger un rapport d’erreurs. Cette opération peut être effectuée en copiant et en collant directement le SasUrl fourni dans la commande Tenant-To-Tenant-GetMigrationStatus ou en utilisant les commandes suivantes qui utilisent l’URI SAS du statut de vérification de l’étape précédente et l’emplacement souhaité pour télécharger le rapport d’erreurs.

Terminez la procédure suivante.

  1. Exécutez la commande suivante avec Windows PowerShell ISE.

    Import-Module Az.Storage 
    # Define the SAS URI of the blob
    $sasUri = " Update the SAS Uri from previous step "
    # Define the path where the blob will be downloaded
    $destinationPath = "C:\Downloads\Failed\"
    # Split the SAS URI on the '?' character to separate the URL and the SAS token
    $url, $sasToken = $sasUri -split '\?', 2
    $containerName = $url.Split('/')[3]
    $storageAccountName = $url.Split('/')[2].Split('.')[0]
    $storageContext = New-AzStorageContext -StorageAccountName $storageAccountName -SasToken $sasToken
    Get-AzStorageBlobContent -Blob "usermapping.csv" -Container $containerName -Destination $destinationPath -Context $storageContext 
    
  2. Corrigez les problèmes dans le fichier de mappage utilisateur.

  3. Rechargez le fichier en suivant les étapes de la section [Charger le fichier de mappage d’utilisateur (administrateur source)](#upload-the-user-mapping-file-(source-admin).

Après avoir terminé avec succès la procédure Préparer la migration de l’environnement (administrateur source), vous pouvez passer à la procédure Migrer l’environnement (administrateur source) pour migrer l’environnement. Effectuez la migration dans les sept jours suivants. Si vous ne terminez pas la migration dans les sept jours suivants, vous devez recommencer la procédure Préparer la migration de l’environnement (administrateur source).

Migrer l’environnement (administrateur source)

Le MigrationId peut être visualisé à l’aide de la commande TenantToTenant-ViewMigrationRequest dans le client source.

TenantToTenant-MigratePowerAppEnvironment
-MigrationId {MigrationId}
-TargetTenantId {TargetTenantId}

Obtenir le statut (administrateur de la source)

TenantToTenant-GetMigrationStatus -EnvironmentName {EnvironmentId}

Exemple de sortie

  • Migrer l’environnement : En cours d’exécution
  • Migrer l’environnement : Terminé

Note

Si vous rencontrez des problèmes lors de l’exécution des commandes ci-dessus, soumettez une demande de support pour obtenir de l’aide.

Processus post-migration

Après avoir déplacé des environnements vers un autre client :

  • L’URL de l’environnement, l’ID d’organisation (OrgID) et le nom ne changent pas.
  • L’environnement source ne dispose pas de Dataverse.
  • Les utilisateurs non inclus dans le fichier de mappage ne seront pas migrés ni mappés après la migration.

Effectuez les procédures suivantes pour Power Automate, Power Apps, Copilot Studio, Power Pages

Processus post-migration pour Power Automate

Une fois la migration terminée, parcourez la section Examiner les composants en tant que liste de contrôle pour ajuster et activer les flux et autres composants. Les étapes clés sont :

  1. Créez des connexions pour toutes les références de connexion.
  2. Démarrez tous les flux, y compris le démarrage des flux enfants avant les flux parents.
  3. Pour tout flux déclenché par HTTP, récupérez la nouvelle URL et placez-la dans les applications ou flux appelants pour actualiser ces références.

Processus post-migration pour Power Apps

Pour les applications compatibles avec les solutions :

  1. Sélectionnez le nouvel environnement dans Power Apps et accédez à la page Solutions.
  2. Sélectionnez Importer et utilisez le sélecteur de fichiers pour sélectionner les packages exportés à partir de l’étape ci-dessus.
  3. Confirmez que l’importation s’est déroulée correctement en vérifiant le contenu de la solution de l’environnement migré.

Pour les applications non compatibles avec les solutions :

  1. Accéder à Power Apps.
  2. Sélectionnez le nouvel environnement dans la liste déroulante Environnement.
  3. Sélectionnez Applications.
  4. Sélectionnez Importer l’application canevas.
  5. Téléchargez le fichier du package d’application.
  6. Complétez toutes les sélections d’option d’importation, puis sélectionnez Importer.
  7. Répétez ces étapes jusqu’à ce que toutes les applications aient été importées.

Processus post-migration pour Copilot Studio

  1. Sélectionnez le nouvel environnement dans Power Apps et accédez à la page Solutions.
  2. Sélectionnez Importer et utilisez le sélecteur de fichiers pour sélectionner les packages exportés à partir de l’étape ci-dessus.
  3. Confirmez que l’importation s’est déroulée correctement en vérifiant le contenu de la solution de l’environnement migré.

Processus post-migration pour Power Pages

Les étapes suivantes doivent être effectuées pour chaque site web de l’environnement.

  1. Connectez-vous à l’environnement.
  2. Ouvrez le centre d’administration.
  3. Approvisionnez le site web avec le même type de portail et la même langue.

Après avoir effectué toutes les étapes ci-dessus et la migration, vous pouvez valider l’environnement dans le client cible et ultérieurement vous pouvez supprimer l’environnement source dans le centre d’administration de Power Platform.

Questions fréquentes

Les opérations en arrière-plan sont-elles activées pendant la migration de client à client ? Le mode d’administration est activé pendant la migration de client à client, par conséquent les opérations en arrière-plan ne s’exécutent pas. Pour en savoir plus, consultez Mode d’administration.

Pouvons-nous migrer tous les utilisateurs de l’organisation Dataverse ? Nous pouvons migrer tous les utilisateurs de l’organisation Dataverse uniquement s’il existe des utilisateurs dans le client de destination. Par exemple :

user001@source.com, user001@destination.comuser002@source.com, user002@destination.com