Gérer les settings BIOS de vos postes (Lenovo, Dell, HP) en utilisant Intune (Proactive Remediations) et Azure Key Vault

Dans cet article nous allons voir comment appliquer/gérer des settings BIOS pour Lenovo, Dell, HP en utilisant Intune (Proactive Remediation) et Azure Key Vault.

La solution

Fonctionnement

  • Nous allons ajouter les settings dans un fichier CSV
  • Nous y ajouterons également la valeur à appliquer/gérer
  • Le script de détection ira vérifier toutes les settings
  • Si ces settings n’ont pas la valeur attendue, exécution du script de remédiation

Si un mot de passe BIOS est présent, nous procéderons comme ci-dessous:

  • Créer une appplication Azure
  • Celle-ci aura accès à Azure Key Vault
  • Ajout d’un certificat à l’application
  • Déploiement du certificat sur les postes
  • Installation de quelques modules sur les postes
  • Ceux-ci sont: az.accounts, az.keyvault
  • Le script ira obtenir le mot de passe sur le Key Vault
  • Application des settings

Le fichier CSV

Ci-dessous un aperçu du fichier CSV pour Lenovo:

Dans mon cas, j’ai uploadé le CSV sur un BLOB storage.
Vous pouvez changer le chemin du CSV en utilisant la variable $CSV_URL dans le script de détection.

Téléchargez les scripts

Cliquez sur l’image ci-dessous pour récupérer les scripts:

Les scripts

Dans le dossier de téléchargement vous trouverez différents dossiers en fonction du constructeur concerné:

  • Lenovo
  • Dell (pas encore dispo avec la partie Key Vault)
  • HP (bientôt)

Chacun de ces dossiers contiennent les fichiers suivants:

  • Constructeur_BIOS_Settings_Detection.ps1
  • Constructeur_BIOS_Settings_Remediation_KeyVault.ps1
  • Constructeur_BIOS_Settings_Remediation_PWD_File.ps1

Variables à configurer

Configurer les variables suivantes:

#********************************************************************************************
# Part to fill
#
$CSV_URL = "" # Path of CSV containing BIOS settings with value to set
#
# Azure application info (for getting secret from Key Vault)
$TenantID = ""
$App_ID = ""
$ThumbPrint = ""
#
# Mode to install Az modules, 
# Choose Install if you want to install directly modules from PSGallery
# Choose Download if you want to download modules a blob storage and import them
$Az_Module_Install_Mode = "Install" # Install or Download
# Modules path on the web, like blob storage if the Az_Module_Install_Mode is setted to Download
$Az_Accounts_URL = ""
$Az_KeyVault_URL = ""
#
$vaultName = "" # Name of theKey Vault
$Secret_Name_New_PWD = "" # Name of the Secret containing the BIOS password
#********************************************************************************************

Création de l’application Azure

  1. Allez dans le portail Azure
  2. Cliquez sur App registrations
  3. Cliquez sur New registration
  4. Saisissez un nom
  5. Cliquez sur Register

Nous allons maintenant importer le certificat dans l’application Azure.

  1. Allez dans le portail Azure
  2. Cliquez sur Certificates & secrets
  3. Dans Certificates, cliquez sur Upload certificate
  4. Choisissez votre certificat
  5. Cliquez sur Add

Création du groupe de ressource

  1. Allez dans Azure
  2. Dans la barre de recherche, saisir Resource group
  3. Cliquez sur Resource group
  4. Cliquez sur Create
  5. Choisissez une sousciption
  6. Saisissez un nom
  7. Choisissez une région
  1. Cliquez sur Review + Create
  2. Cliquez sur Create

Partie Key Vault

Création du Key Vault

Dans cette partie nous allons créer notre Key Vault, afin d’y ajouter des Secrets (mot de passe).

  1. Allez dans le portail Azure
  2. Allez dans Key Vault
  1. Cliquez sur Add
  2. Choisissez votre souscription, votre groupe de ressource (ou créez en un nouveau)
  3. Saisissez un nom de Key vault
  4. Choisissez votre localisation
  1. Cliquez sur Review + Create
  2. Cliquez sur Create

Ajoutez votre mot de passe

Dans cette partie nous allons ajouter notre mot de passe BIOS (Secret).

  1. Cliquez sur Go to resource
  2. Cliquez sur Secrets
  1. Cliquez sur Generate/Import
  1. Saisissez un nom comme NewPassword
  2. Dans Value, saisissez un mot de passe
  1. Cliquez sur Create
  2. Votre mot de passe est désormais disponible

Ajouter des accès à votre appli Azure

Dans cette partie nous allons donner accès à notre application Azure pour récupérer les mots de passe du Key Vault.

  1. Allez dans key vault
  2. Cliquez sur Access policies
  1. Cliquez sur add access policies
  1. Dans Configure template, Choisissez Secret management
  2. Dans Key permissions, décochez tout
  3. Dans Secret permissions, cochez uniquement Get
  4. Dans Certificate permissions, décochez tout
  5. Dans Select principal, cliquez sur None selected
  6. Choisissez votre application
  7. Cliquez sur select
  8. Cliquez sur Add
  1. Cliquez sur Save

Création d’un groupe dynamique

Dans cette partie, nous allons créer un groupe dynamique qui contiendra uniquement les postes du constructeur concerné (Lenovo, Dell, HP).

  1. Allez dans Microsoft Endpoint manager admin center
  2. Allez dans Groups
  3. Cliquez sur New group
  4. Sélectionnez Security comme Group type
  5. Saisissez un nom
  6. Dans Membership type, selectionnez Dynamic devices
  7. Cliquez sur Add dynamic query
  8. Cliquez sur Edit pusis saisissez la ligne suivante:
    (device.deviceManufacturer -contains “Lenovo”) ou Dell ou HP
  9. Cliquez sur Save
  10. Cliquez sur Create

Création du package de remédiation

  1. Allez dans Microsoft Endpoint manager admin center
  2. Allez dans Reports
  3. Allez dans Endpoint analytics
  4. Allez dans Proactive remediations
  5. Cliquez sur Create script package
  6. Saisissez un nom
  7. Cliquez sur Next
  8. Cliquez sur Detection script file
  9. Choisissez le script de détection approprié
  10. Cliquez sur Remediation script file
  11. Choisissez le script de remédiation approprié
  12. Cliquez sur Next
  13. Choisissez le groupe approprié
  14. Dans la partie Schedule, choisissez quand s’exécutera le package
  15. Cliquez sur Apply
  16. Cliquez sur Next
  17. Cliquez sur Create

A propos de l'auteur

Consultant Modern Workplace travaillant principalement sur ce qui tourne autour du poste de travail (MDT, SCCM, Intune, Graph...) et l’automatisation avec PowerShell. MVP Microsoft (depuis 5ans) et auteur pour ENI, il publie régulièrement sur son blog et gère différents groupes Facebook, PowerShell et WPF (~9000 membres), Windows Autopilot (~6900membres). - Blog: https://www.systanddeploy.com - Twitter: @syst_and_deploy

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *