Cliquez pour évaluer cet article !
0 avis

Dans cet article, je vais partager un script Azure Automation Azure (runbook) qui vous permet de remplir automatiquement un groupe d’appareils en fonction d’un groupe d’utilisateurs.

Contexte

Vous avez un groupe d’utilisateurs, par exemple pour différentes équipes DWP, DSI, Collab…
Vous souhaitez déployer une application, un script… uniquement sur les appareils des membres de ces groupes.
Vous avez besoin d’un groupe qui rassemble tous les appareils de tous les utilisateurs de ces groupes.
C’est là que le runbook d’automatisation intervient.

La solution

Voici comment cela fonctionne :

  • Un runbook Azure Automation est exécuté, par exemple, tous les deux jours,
  • Il récupère les membres d’un groupe d’utilisateurs,
  • Pour chaque utilisateur, il récupère leurs appareils
  • Pour chaque appareil, il l’ajoute au groupe s’il n’en est pas déjà membre
  • Ensuite, un mail contenant un fichier CSV avec tous les appareils ajoutés est envoyé

La notification

Ci-dessous, un aperçu des notifications par mail pour les nouveaux appareils ajoutés :


Ci-dessous, un aperçu de la liste CSV :

Récupérer le script

Cliquez sur l’image GitHub ci-dessous pour accéder aux scripts.

Vous y trouverez :

  • Assign_permissions.ps1 : script pour ajouter des permissions à l’identité managée (MI).
  • Runbook.ps1 : le runbook d’automatisation Azure.

Création du compte Azure Automation

Objectif : Nous allons créer le compte Azure Automation qui sera utilisé pour exécuter le script.

  1. Allez dans Azure
  2. Allez dans Azure Automation
  3. Cliquez sur Create
  4. Saisissez un nom
  5. Choisissez un Abonnement, un Groupe de ressources et une Région
  6. Cliquez sur Create

Configuration de l’identité managée

Objectif : L’identité managée est utilisée pour s’authentifier auprès du tenant, évitant ainsi d’avoir à fournir des identifiants.
Lorsque vous configurez l’identité managée, une nouvelle application d’entreprise Azure sera créée.
Cette application sera utilisée pour s’authentifier auprès de votre tenant et effectuer des appels API.

Procédez comme suit :

  1. Allez dans Azure Automation
  2. Allez dans Identity
  3. Cliquez sur System assigned
  4. Sélectionnez Enable
  5. Cliquez sur Save
  6. Cliquez sur Yes
  7. Une fois configurée, une nouvelle application d’entreprise portant le même nom que le compte d’automatisation sera créée

Ajout de modules

Objectif : Nous devons ajouter des modules pour s’authentifier avec Graph et envoyer des mails.
N’utilisez cette étape que si vous souhaitez envoyer des informations par mail.

  1. Allez dans Azure Automation
  2. Cliquez sur Modules gallery
  3. Importez les modules suivants :
    • Microsoft.Graph.Groups
    • Microsoft.Graph.Authentication
    • Microsoft.Graph.Users

Ajout du propriétaire du groupe

Objectif : Nous voulons ajouter des membres à un groupe cible, ce qui nécessite des droits sur ce groupe.
Pour cela, nous allons ajouter l’identité managée comme propriétaire du groupe.

  1. Ouvrez le portail Intune.
  2. Allez dans Groups.
  3. Accédez à votre groupe
  4. Cliquez sur Owners
  5. Recherchez l’identité managée.
  6. Sélectionnez-la

Ajout de permissions

Objectif : Afin de pouvoir répertorier les applications Azure et envoyer des mails, nous devons ajouter des permissions à notre identité managée.
Les permissions nécessaires sont :

  • Mail.Send
  • Group.Read.All
  • User.Read.All
  • GroupMember.ReadWrite.All

Procédez comme suit :

  1. Modifiez le script Assign_permissions.ps1.
  2. Modifiez les variables $TenantID et $DisplayNameOfMSI.
  3. Ouvrez PowerShell avec des droits d’administrateur global.
  4. Exécutez le script.

Modification du runbook

Informations sur les groupes

Objectif : Modifier le script du runbook pour l’adapter à vos besoins en ce qui concerne les groupes d’utilisateurs et d’appareils.

  1. Modifiez le script Runbook.ps1.
  2. Modifiez les variables suivantes :
$Users_Group = "" # ID of the users group 
$Devices_Target_Group_Id = "" # ID of the target group

Informations sur le mail

Objectif : Modifier le script du runbook pour l’adapter à vos besoins concernant les notifications par mail.

  1. Modifiez le script Assign_permissions.ps1.
  2. Modifiez les variables suivantes :
$Send_Mail = $True # $True or $False
$Send_All_Devices_CSV = $False # $True or $False
$Mail_From = ""
$Mail_To = ""
$CSV_File = "TeamName_Devices_Group_new_members.csv"
$CSV_File_All = "TeamName_Devices_Group_all_members.csv"

* Replace TeamName with the name of the team for which you want to get members

Création du runbook

Objectif : Créer le script qui exécute la requête KQL à distance.

  1. Cliquez sur Create a runbook
  2. Saisissez un nom
  3. Dans runbook type, sélectionnez PowerShell
  4. Cliquez sur Create
  5. Cliquez sur Modify sur le runbook
  6. Copiez le contenu du script Runbook.ps1
  7. Cliquez sur Save
  8. Cliquez sur Publish

Notez cet article

Vous avez aimé cet article ?

Rendez-le plus visible auprès des internautes en lui mettant une bonne note.

Cliquez pour évaluer cet article !
0 avis

Articles pouvant vous intéresser