Introduction
Dans l'écosystème Microsoft 365, les utilisateurs externes sont souvent invités à collaborer sur des projets spécifiques, en utilisant leur propre identité. Cependant, lorsque ces collaborations évoluent en engagements à long terme, il devient nécessaire de convertir ces utilisateurs externes en utilisateurs internes. Cette conversion garantit la continuité des accès, des permissions et de l'historique sans créer de nouveaux comptes.
Tandis que Microsoft Entra ID offre la fonctionnalité de conversion utilisateur en interne au niveau individuel, elle manque d'outils pour effectuer des conversions massives. Dans cet article, nous explorons une solution basée sur PowerShell permettant de gérer des conversions en bulk de manière sécurisée et organisée.
Bon Ă savoir
Pourquoi Convertir des Utilisateurs Externes en Internes ?
Les Scénarios Courants
Voici des cas typiques nécessitant la conversion d'utilisateurs externes :
- Fusions et Acquisitions : Les employés d'une entreprise acquise sont initialement ajoutés en tant qu'invités. Convertir ces comptes lorsqu'ils deviennent internes assure une transition fluide.
- Onboarding des Employés : Les stagiaires ou contractuels ayant commencé avec des accès limités peuvent être convertis en utilisateurs internes lorsqu'ils passent en pleine employabilité.
- Collaborations Long Terme : Les partenaires externes ou consultants engagés sur des projets prolongés doivent être intégrés en interne pour consolider leurs permissions.
Méthode pour Convertir des Utilisateurs Externes
Fonctionnalité Native Microsoft Entra ID
La conversion peut être réalisée via le portail Microsoft Entra. Voici les étapes pour la conversion au niveau individuel :
- Accédez à Entra ID → Utilisateurs → Tous les utilisateurs → Sélectionner un utilisateur.
- Dans l'onglet Aperçu, cliquez sur Convertir en utilisateur interne sous la section Collaboration B2B.
Bien que simple, cette méthode est peu pratique pour des conversions de masse.
Conversion via Microsoft Graph API
Pour des conversions personnalisées, vous pouvez utiliser l'API Graph avec une requête HTTP :
1Invoke-RestMethod -Uri "https://graph.microsoft.com/beta/users/{userId}/microsoft.graph.convertExternalToInternalMemberUser" -Method PATCHCependant, cette méthode nécessite une manipulation individuelle des données et devient laborieuse pour gérer plusieurs utilisateurs.
Conversion avec le Cmdlet Convert-MgBetaUserExternalToInternalMemberUser
Le cmdlet PowerShell permet des opérations groupées tout en exigeant un UPN et un mot de passe pour chaque utilisateur. Pour simplifier, un script PowerShell avancé peut être utilisé.
Script PowerShell pour Conversion en Masse
Points Essentiels du Script
Notre script PowerShell dédié offre les fonctionnalités suivantes :
- Conversion en masse d'utilisateurs externes listés dans un fichier CSV.
- Génération automatique des UPN et mots de passe si non fournis.
- Supporte des comptes avec authentification MFA ou CBA (authentication basée sur certificat).
- Exporte des logs détaillés dans un fichier ZIP protégé par mot de passe.
Astuce
Exemple d'Exécution du Script
Préparation des Données
Créez un fichier CSV avec les colonnes obligatoires suivantes :
- UserId : Identifiant unique (UPN, email ou objet ID).
- NewUserPrincipalName : (optionnel) Nouvel UPN Ă attribuer.
- NewPassword : (optionnel) Mot de passe Ă configurer.
- ForceChangePasswordNextSignIn : (Yes ou No).
1UserId,NewUserPrincipalName,NewPassword,ForceChangePasswordNextSignIn2externaluser@example.com,,,3externaluser2@example.com,newupn@example.com,newpassword,YesExécution du Script
Importez le fichier CSV et exécutez :
1./ConvertExternalUsersToInternalUsersM365.ps1 -InputCSVFilePath "C:\Users\InputFile.csv"Le script génère un fichier log détaillant l'historique de conversion.
Options Avancées
- Génération Automatique de UPN : Ajoutez le paramètre
-AutoGenerateNewUPN. - Génération Automatique de Mot de Passe : Utilisez
-AutoGeneratePassword. - Combinez ces options pour automatiser entièrement le processus.
1./ConvertExternalUsersToInternalUsersM365.ps1 -AutoGenerateNewUPN -AutoGeneratePasswordImpact Technique de la Conversion
Lorsqu'un utilisateur est converti en interne, voici les changements majeurs :
- Audit et Historique Maintenus : L'objet utilisateur reste inchangé.
- Politiques et Permissions Mis à Jour : Les politiques d'accès internes sont appliquées.
- Authentification et Licensing : Les configurations existantes sont conservées.
Attention
Conclusion
La conversion en masse d'utilisateurs externes en internes est un processus stratégique sous Microsoft 365. Le script PowerShell présenté offre une solution robuste et automatisée adaptée à des usages variés. Que vous dirigiez une migration massive ou un ajustement spécifique, ce processus garantira une transition fluide, respectant la sécurité et la conformité.
Vous avez des questions ou des remarques ? Partagez-les en commentaire ci-dessous !



