Script PowerShell pratique pour la conversion de l’Authentification Hello par NIP vers Microsoft Entra ID par défaut et maintien de l’accès aux ressources locales pour les PC qui sont joint à Microsoft Entra ID.

Fabrice BlanchetNon classifié(e)

Mise en Contexte

La gestion de l’authentification dans les environnements réseaux peut rapidement devenir complexe, surtout lorsque l’on dépend d’accès à des ressources partagées critiques telles que les file shares. L’authentification par NIP via Windows Hello, bien qu’efficace pour des accès rapides et sécurisés à des appareils locaux, présente des limites notables lorsqu’il s’agit de l’intégration réseau étendue. En effet, l’authentification par NIP ne transmet pas les identifiants de manière traditionnelle sur le réseau, ce qui peut entraîner des échecs d’authentification répétés lors de tentatives d’accès à des partages de fichiers distants.

Dans ce contexte, le besoin se fait sentir d’adopter une méthode d’authentification plus robuste et compatible avec les exigences de sécurité et d’accessibilité réseau. Microsoft Entra ID, offrant une gestion centralisée des identités via Microsoft Azure Active Directory, propose une solution idéale. Il permet une authentification unifiée sur divers services et appareils, facilitant ainsi l’accès sécurisé aux file shares et autres ressources réseau importantes.

Le script PowerShell que nous proposons aborde directement cette problématique en automatisant la transition des systèmes utilisant l’authentification par NIP vers des authentifications basées sur Microsoft Entra ID. Ce script modifie les clés de registre nécessaires pour remplacer l’identification par NIP par des mots de passe standardisés configurés via Microsoft Entra ID. Cela simplifie non seulement la gestion des identités au sein de l’organisation mais assure également que l’accès aux ressources réseau est à la fois fluide et sécurisé.

Avant:

Après:

Pour Référence:

  • Password: {60B78E88-EAD8-445C-9CFD-0B87F74EA6CD}
  • Microsoft Account: {F8A0B131-5F68-486C-8040-7E8FC3C85BB6}
  • PIN: {D6886603-9D2F-4EB2-B667-1971041FA96B}
  • Windows Hello Fingerprint: {BEC09223-B018-416D-A0AC-523971B639F5}
  • Windows Hello Face: {8AF662BF-65A0-4D0A-A540-A338A999D36F}
  • Picture Logon: {2135F72A-90B5-4ED3-A7F1-8BB705AC276A}

Le Script de Modification du Registre, afin de remplacer le NIP par l’authentification par mot de passe par défaut:

Contexte

Notre objectif est de rechercher des clés spécifiques dans le chemin HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserTile et de remplacer toutes les occurrences de {D6886603-9D2F-4EB2-B667-1971041FA96B} par {60B78E88-EAD8-445C-9CFD-0B87F74EA6CD}.

Détail du script

# Chemin de base pour la recherche dans le registre
$basePath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserTile"

# Ancienne et nouvelle clés GUID à rechercher et remplacer
$oldGuid = "{D6886603-9D2F-4EB2-B667-1971041FA96B}"
$newGuid = "{60B78E88-EAD8-445C-9CFD-0B87F74EA6CD}"

# Obtenir toutes les propriétés sous le chemin spécifié
try {
    $properties = Get-ItemProperty -Path $basePath
} catch {
    Write-Error "Erreur lors de l'accès au chemin : $basePath"
    exit
}

# Vérification et remplacement des GUID
foreach ($property in $properties.PSObject.Properties) {
    if ($property.Value -eq $oldGuid) {
        # Remplacement de la valeur GUID
        Set-ItemProperty -Path $basePath -Name $property.Name -Value $newGuid
        Write-Host "Remplacé: $($property.Name) avec $newGuid"
    }
}

Write-Host "Opération terminée."

Comment Exécuter le Script

  1. Lancer PowerShell en tant qu’Administrateur: Faites un clic droit sur le bouton Start et sélectionnez « Windows PowerShell (Admin) ».
  2. Exécuter le Script: Copiez le script ci-dessus et collez-le dans la console PowerShell, puis pressez Entrée.

Précautions à Prendre

  • Sauvegarde: Toujours faire une sauvegarde du registre avant de procéder à des modifications.
  • Permissions: Assurez-vous d’avoir les permissions administratives nécessaires pour effectuer des modifications dans le registre.
  • Test: Testez le script dans un environnement de développement avant de l’appliquer en production.

Conclusion

En attendant que Microsoft corrige ce problème: le script détecte les comptes, et configure l’authentification par mot de passe par défaut au lieu du NIP. Ce qui vous donne accès aux ressource locales tel que les file share. En attendant que Microsoft trouve une solution pour palier ce problème d’authetification.

Encore mieux: utilisez l’authentification Windows Passwordless: https://learn.microsoft.com/fr-fr/entra/identity/authentication/howto-mfa-getstarted

N’oubliez pas que nous sommes disponibles pour répondre à vos questions, et qu’en cas de doute, communiquez avec nous!