Sommaire
ToggleDans 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
- Allez dans le portail Azure
- Cliquez sur App registrations
- Cliquez sur New registration
- Saisissez un nom
- Cliquez sur Register
Nous allons maintenant importer le certificat dans l’application Azure.
- Allez dans le portail Azure
- Cliquez sur Certificates & secrets
- Dans Certificates, cliquez sur Upload certificate
- Choisissez votre certificat
- Cliquez sur Add
Création du groupe de ressource
- Allez dans Azure
- Dans la barre de recherche, saisir Resource group
- Cliquez sur Resource group
- Cliquez sur Create
- Choisissez une sousciption
- Saisissez un nom
- Choisissez une région
- Cliquez sur Review + Create
- 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).
- Allez dans le portail Azure
- Allez dans Key Vault
- Cliquez sur Add
- Choisissez votre souscription, votre groupe de ressource (ou créez en un nouveau)
- Saisissez un nom de Key vault
- Choisissez votre localisation
- Cliquez sur Review + Create
- Cliquez sur Create
Ajouter votre mot de passe
Dans cette partie nous allons ajouter notre mot de passe BIOS (Secret).
- Cliquez sur Go to resource
- Cliquez sur Secrets
- Cliquez sur Generate/Import
- Saisissez un nom comme NewPassword
- Dans Value, saisissez un mot de passe
- Cliquez sur Create
- 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.
- Allez dans key vault
- Cliquez sur Access policies
- Cliquez sur add access policies
- Dans Configure template, Choisissez Secret management
- Dans Key permissions, décochez tout
- Dans Secret permissions, cochez uniquement Get
- Dans Certificate permissions, décochez tout
- Dans Select principal, cliquez sur None selected
- Choisissez votre application
- Cliquez sur select
- Cliquez sur Add
- 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).
- Allez dans Microsoft Endpoint manager admin center
- Allez dans Groups
- Cliquez sur New group
- Sélectionnez Security comme Group type
- Saisissez un nom
- Dans Membership type, selectionnez Dynamic devices
- Cliquez sur Add dynamic query
- Cliquez sur Edit pusis saisissez la ligne suivante:
(device.deviceManufacturer -contains « Lenovo ») ou Dell ou HP - Cliquez sur Save
- Cliquez sur Create
Création du package de remédiation
- Allez dans Microsoft Endpoint manager admin center
- Allez dans Reports
- Allez dans Endpoint analytics
- Allez dans Proactive remediations
- Cliquez sur Create script package
- Saisissez un nom
- Cliquez sur Next
- Cliquez sur Detection script file
- Choisissez le script de détection approprié
- Cliquez sur Remediation script file
- Choisissez le script de remédiation approprié
- Cliquez sur Next
- Choisissez le groupe approprié
- Dans la partie Schedule, choisissez quand s’exécutera le package
- Cliquez sur Apply
- Cliquez sur Next
- Cliquez sur Create