Démarrage rapide : Créer un groupe d’administration avec JavaScript

Les groupes d’administration sont des conteneurs qui vous aident à gérer l’accès, la stratégie et la conformité dans plusieurs abonnements. Créez ces conteneurs pour construire une hiérarchie efficace utilisable avec Azure Policy et les contrôles d’accès en fonction du rôle Azure. Pour plus d’informations sur les groupes d’administration, consultez Organiser vos ressources avec des groupes d’administration Azure.

La création du premier groupe d’administration dans l’annuaire peut nécessiter jusqu’à 15 minutes. En effet, des processus s’exécutent la première fois pour configurer le service des groupes d’administration dans Azure pour votre annuaire. Vous recevez une notification quand le processus est terminé. Pour plus d’informations, consultez la configuration initiale des groupes d’administration.

Prérequis

  • Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

  • Avant de commencer, vérifiez que la version 12 de Node.js ou une version ultérieure est installée.

  • Tout utilisateur Azure AD dans le locataire peut créer un groupe d’administration sans l’autorisation d’écriture du groupe d’administration attribuée à cet utilisateur si la protection de la hiérarchie n’est pas activée. Ce nouveau groupe d’administration devient alors un enfant du groupe d’administration racine ou le groupe d’administration par défaut, et le rôle « Propriétaire » est attribué au créateur. Le service de groupe d’administration offre cette possibilité afin que les attributions de rôles ne soient pas nécessaires au niveau de la racine. Aucun utilisateur n’a accès au groupe d’administration racine lors de sa création. Pour éviter l’obstacle que constitue la recherche des administrateurs généraux Azure AD pour commencer à utiliser des groupes d’administration, nous autorisons la création des groupes d’administration initiaux au niveau racine.

Azure Cloud Shell

Azure héberge Azure Cloud Shell, un environnement d’interpréteur de commandes interactif que vous pouvez utiliser dans votre navigateur. Vous pouvez utiliser Bash ou PowerShell avec Cloud Shell pour utiliser les services Azure. Vous pouvez utiliser les commandes préinstallées Cloud Shell pour exécuter le code de cet article sans avoir à installer quoi que ce soit dans votre environnement local.

Pour démarrer Azure Cloud Shell :

Option Exemple/Lien
Sélectionnez Essayer dans le coin supérieur droite d’un bloc de codes ou de commandes. La sélection de Essayer ne copie pas automatiquement le code ni la commande dans Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Accédez à https://shell.azure.com ou sélectionnez le bouton Lancer Cloud Shell pour ouvrir Cloud Shell dans votre navigateur. Button to launch Azure Cloud Shell.
Sélectionnez le bouton Cloud Shell dans la barre de menus en haut à droite du portail Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Pour utiliser Azure Cloud Shell :

  1. Démarrez Cloud Shell.

  2. Sélectionnez le bouton Copier sur un bloc de codes (ou un bloc de commandes) pour copier le code ou la commande.

  3. Collez le code ou la commande dans la session Cloud Shell en sélectionnant Ctrl+Maj+V sur Windows et Linux ou en sélectionnant Cmd+Maj+V sur macOS.

  4. Sélectionnez Entrée pour exécuter le code ou la commande.

Configuration des applications

Pour permettre à JavaScript de gérer des groupes d’administration, l’environnement doit être configuré. Cette configuration fonctionne partout où vous pouvez utiliser JavaScript, y compris bash sur Windows 10.

  1. Configurez un nouveau projet Node.js en exécutant la commande suivante.

    npm init -y
    
  2. Ajoutez une référence au module yargs.

    npm install yargs
    
  3. Ajoutez une référence au module Azure Resource Graph.

    npm install @azure/arm-managementgroups
    
  4. Ajoutez une référence à la bibliothèque d’authentification Azure.

    npm install @azure/identity
    

    Notes

    Vérifiez dans package.json que la version de @azure/arm-managementgroups est 2.0.1 ou ultérieur, et que la version de @azure/identity est 2.0.4 ou ultérieur.

Créer le groupe d’administration

  1. Créez un fichier nommé index.js et entrez le code suivant.

       const argv = require("yargs").argv;
       const { InteractiveBrowserCredential } = require("@azure/identity");
       const { ManagementGroupsAPI } = require("@azure/arm-managementgroups");
    
       if (argv.groupID && argv.displayName) {
          const createMG = async () => {
             const credentials = new InteractiveBrowserCredential();
             const client = new ManagementGroupsAPI(credentials);
             const result = await client.managementGroups.beginCreateOrUpdateAndWait(
                argv.groupID,
                {
                   displayName: argv.displayName
                }
             );
             console.log(result);
          };
    
       createMG();
    }
    
  2. Entrez la commande suivante dans le terminal :

    node index.js --groupID "<NEW_MG_GROUP_ID>" --displayName "<NEW_MG_FRIENDLY_NAME>"
    

    Veillez à remplacer l’espace réservé <> de chaque jeton respectivement par votre ID de groupe d’administration et votre nom convivial de groupe d’administration.

    Quand le script tente de s’authentifier, un message similaire au message suivant s’affiche dans le terminal :

    Pour vous connecter, utilisez un navigateur web afin d’ouvrir la page https://microsoft.com/devicelogin et entrez le code FGB56WJUGK pour vous authentifier.

    Une fois que vous vous authentifiez dans le navigateur, le script continue à s’exécuter.

Le résultat de la création du groupe d’administration s’affiche sur la console.

Nettoyer les ressources

Si vous souhaitez supprimer les bibliothèques installées de votre application, exécutez la commande suivante.

npm uninstall @azure/arm-managementgroups @azure/identity yargs

Étapes suivantes

Dans ce guide de démarrage rapide, vous avez créé un groupe d’administration pour organiser votre hiérarchie de ressources. Le groupe d’administration peut contenir des abonnements ou d’autres groupes d’administration.

Pour en savoir plus sur les groupes d’administration et sur la gestion de votre hiérarchie de ressources, consultez :