Symptômes
Lorsque vous tentez de migrer un composant WebPart, ShareGate Migrate affiche le message suivant :
Impossible de créer ou de mettre à jour le WebPart. Dans Microsoft 365, cela est principalement causé par la désactivation du paramètre de batterie de serveurs "Custom Script".
Index
Code d'erreur
WP-027-076
DA-165-076
Détails
Il existe un paramètre appelé Custom Script dans Microsoft 365 qui permet à l'administrateur de choisir si les scripts personnalisés sont activés ou désactivés sur un site.
Étant donné que les composants WebPart fonctionnent comme des scripts personnalisés, ShareGate Migrate ne pourra pas migrer les composants WebPart si les scripts personnalisés sont désactivés.
Remarque : les fonctionnalités de scripts personnalisés sont désactivées par défaut pour :
Sites personnels
Sites créés en libre-service
La Site Collection racine du locataire
Solutions
Migration vers un site classique
Vous devez activer les scripts personnalisés dans vos paramètres, puis réessayer la migration.
Pour activer les scripts personnalisés :
Connectez-vous à Microsoft 365
Cliquez sur l'icône du lanceur d'applications
Cliquez sur Administration
Sélectionnez Paramètres
Sous Custom Script, sélectionnez :
Autoriser les utilisateurs à exécuter des scripts personnalisés sur les sites personnels.
Autoriser les utilisateurs à exécuter des scripts personnalisés sur les sites créés en libre-service.
Cliquez sur OK
La prise en compte de ce changement de paramètre peut prendre jusqu'à 24 heures.
Pour en savoir plus sur les scripts personnalisés, cliquez ici.
Migration vers un site moderne
Sans les autorisations SharePoint admin ou Global admin, la fonctionnalité Custom Script ne peut pas être activée automatiquement dans un site moderne pendant la migration. Par conséquent, ShareGate Migrate ne peut pas migrer les formulaires, les composants WebPart et les pages ASPX.
Pour en savoir plus sur les scripts personnalisés, consultez l'article Microsoft Autoriser ou empêcher les scripts personnalisés.
Remarque : Custom Script est désactivé dans un site moderne lors de sa création dans SharePoint, même si vous l'avez activé au niveau du locataire.
Remarque : Microsoft retire progressivement les pages classiques et les scripts personnalisés dans SharePoint Online, par étapes à partir du 1er mars 2027. Certains locataires ne pourront pas du tout activer ce paramètre. Consultez l'article Dépréciation des pages classiques et des scripts personnalisés de Microsoft : ce que cela signifie pour votre migration avant de continuer.
Utiliser les autorisations SharePoint admin ou Global admin
Si vous utilisez les autorisations SharePoint admin ou Global admin, l'application pourra activer automatiquement les scripts personnalisés pendant la migration.
Si vous disposez des autorisations de site collection admin, vous pouvez demander à un SharePoint admin ou à un global admin d'activer manuellement les scripts personnalisés sur votre Site Collection à l'aide des étapes ci-dessous.
Activer manuellement les scripts personnalisés dans Microsoft 365
Pour activer les scripts personnalisés dans une Site Collection Microsoft 365 avec PowerShell, procédez comme suit :
Téléchargez le SharePoint Online Management Shell.
Ouvrez une invite SharePoint Online Management Shell.
Exécutez les deux commandes suivantes :
Connect-SPOService -Url https://YourDomain-admin.sharepoint.com
Set-SPOSite -Identity https://YourDomain.sharepoint.com/sites/YourSite -DenyAddAndCustomizePages 0
Relancez votre migration, tout devrait alors fonctionner correctement.
Remarque : il est recommandé de remettre Custom Script sur refusé après la migration. Pour ce faire, vous pouvez exécuter le script à nouveau, mais en remplaçant cette fois la valeur de -DenyAddAndCustomizePages par "1".
Activer manuellement les scripts personnalisés dans SharePoint 2019
Pour activer les scripts personnalisés dans une Site Collection SharePoint 2019 avec PowerShell, procédez comme suit :
Ouvrez une fenêtre Windows PowerShell ou Windows PowerShell ISE.
Exécutez le script suivant sur votre Site Collection :
$site = Get-SPSite -Identity "http://yourfarm/sites/yoursite"
$site.DenyPermissionsMask = [Microsoft.SharePoint.SPBasePermissions]::EmptyMask
Relancez votre migration, tout devrait alors fonctionner correctement.
Cet article a été traduit à l'aide de l'intelligence artificielle. En cas de doute, référez-vous à la version originale en anglais.
