Partager via


Configurer l’authentification Windows pour Microsoft Entra ID avec le flux entrant basé sur la confiance

Cet article explique comment implémenter le flux entrant d’authentification basée sur la confiance pour permettre aux clients joints à Active Directory (AD) qui utilisent Windows 10, Windows Server 2012 ou des versions ultérieures de Windows de s’authentifier auprès d’une instance gérée SQL Azure à l’aide de l’authentification Windows.

Cet article partage également les étapes pour faire pivoter une clé Kerberos pour votre compte de service dans Microsoft Entra ID (anciennement Azure Active Directory) et votre objet Domaine approuvé, ainsi que les étapes de suppression d’un objet Domaine approuvé et de tous les paramètres Kerberos, si vous le souhaitez.

L’activation du flux entrant d’authentification basée sur la confiance est une étape dans la configuration de l’authentification Windows pour Azure SQL Managed Instance à l’aide de Microsoft Entra ID et de Kerberos. Le flux interactif moderne est disponible pour les clients compatibles qui utilisent Windows 10 20H1, Windows Server 2022 ou une version ultérieure de Windows.

Remarque

Microsoft Entra ID était précédemment connu sous le nom d’Azure Active Directory (Azure AD).

Autorisations

Pour effectuer les étapes présentées dans cet article, vous devez :

  • D’un nom d’utilisateur et d’un mot de passe d’administrateur Active Directory locaux.
  • Nom d’utilisateur et mot de passe du compte Microsoft Entra Global Administrator.

Prérequis

Pour implémenter le flux entrant d’authentification basée sur l’approbation, vérifiez d’abord que les conditions préalables suivantes sont remplies :

Configuration requise Description
Le client doit utiliser Windows 10, Windows Server 2012 ou une version ultérieure de Windows.
Les clients doivent être joints à AD. Le domaine doit avoir un niveau fonctionnel de Windows Server 2012 ou version ultérieure. Vous pouvez déterminer si le client est joint à AD en exécutant la commande dsregcmd : dsregcmd.exe /status
Module de gestion des authentifications hybrides Azure AD. Ce module PowerShell fournit des fonctionnalités de gestion pour l’installation locale.
Locataire Azure.
Abonnement Azure sous le même locataire Microsoft Entra que celui que vous prévoyez d’utiliser pour l’authentification.
Microsoft Entra Connect installé. Environnements hybrides où les identités existent à la fois dans Microsoft Entra ID et AD.

Créer et configurer l’objet de domaine de confiance Microsoft Entra Kerberos

Pour créer et configurer l’objet de domaine approuvé Microsoft Entra Kerberos, vous devez installer le module PowerShell de gestion des authentifications hybrides Azure AD.

Vous utiliserez ensuite le module PowerShell de gestion des authentifications hybrides Azure AD pour configurer un objet de domaine approuvé dans le domaine AD local et enregistrer les informations de confiance avec Microsoft Entra ID. Cela crée une relation de confiance avec l’AD local, ce qui permet à Microsoft Entra ID de faire confiance à cet AD local.

Configurer l’objet Domaine approuvé

Pour configurer l’objet Domaine approuvé, commencez par installer le module de gestion des authentifications PowerShell Azure AD Hybride.

Installez le module de gestion des authentifications PowerShell Azure AD Hybride

  1. Démarrez une session Windows PowerShell avec l’option Exécuter en tant qu’administrateur.

  2. Installez le module de gestion des authentifications PowerShell Azure AD Hybride à l’aide du script suivant. Le script :

    • Active TLS 1.2 pour la communication.
    • Installe le fournisseur du package NuGet.
    • Inscrit le référentiel PSGallery.
    • Installe le module PowerShellGet.
    • Installe le module de gestion des authentifications PowerShell Azure AD Hybride.
      • Le module de gestion des authentifications Azure AD PowerShell Hybride utilise le module AzureADPreview, qui fournit une fonctionnalité de gestion avancée de Microsoft Entra.
      • Pour vous protéger des conflits d’installation inutiles avec le module PowerShell Azure AD, cette commande comprend l’indicateur d’option : AllowClobber.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-PackageProvider -Name NuGet -Force

if (@(Get-PSRepository | ? {$_.Name -eq "PSGallery"}).Count -eq 0){
    Register-PSRepository -DefaultSet-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
}

Install-Module -Name PowerShellGet -Force

Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber

Créer l’objet Domaine approuvé

  1. Démarrez une session Windows PowerShell avec l’option Exécuter en tant qu’administrateur.

  2. Définissez les paramètres communs. Personnalisez le script ci-dessous avant de l’exécuter.

    • Définissez le paramètre $domain sur votre nom de domaine Active Directory local.
    • Lorsque cela est demandé par Get-Credential, saisissez un nom d’utilisateur et un mot de passe d’administrateur Active Directory locaux.
    • Définissez le paramètre $cloudUserName sur le nom d’utilisateur d’un compte privilégié d’administrateur général pour l’accès au cloud de Microsoft Entra.

    Remarque

    Si vous souhaitez utiliser votre compte de connexion Windows actuel pour accéder à Active Directory local, vous pouvez ignorer l’étape où les informations d’identification sont affectées au paramètre $domainCred. Si vous adoptez cette approche, n’incluez pas le paramètre -DomainCredential dans les commandes PowerShell qui suivent cette étape.

    $domain = "your on-premesis domain name, for example contoso.com"
    
    $domainCred = Get-Credential
    
    $cloudUserName = "Azure AD user principal name, for example admin@contoso.onmicrosoft.com"
    
  3. Vérifiez les paramètres Kerberos actuels du domaine.

    Exécutez la commande suivante pour vérifier les paramètres Kerberos actuels de votre domaine :

    Get-AzureAdKerberosServer -Domain $domain `
        -DomainCredential $domainCred `
        -UserPrincipalName $cloudUserName
    

    Si c’est la première fois que vous appelez une commande Microsoft Entra Kerberos, vous devez demander à accéder au cloud Microsoft Entra.

    • Entrez le mot de passe de votre compte d’administrateur général Microsoft Entra.
    • Si votre organisation utilise d’autres méthodes d’authentification modernes telles que l’authentification multifacteur de Microsoft Entra ou une carte à puce, suivez les instructions requises pour vous connecter.

    Si c’est la première fois que vous configurez les paramètres Microsoft Entra Kerberos, la cmdlet Get-AzureAdKerberosServer affiche des informations vides, comme dans l’exemple de sortie suivant :

    ID                  :
    UserAccount         :
    ComputerAccount     :
    DisplayName         :
    DomainDnsName       :
    KeyVersion          :
    KeyUpdatedOn        :
    KeyUpdatedFrom      :
    CloudDisplayName    :
    CloudDomainDnsName  :
    CloudId             :
    CloudKeyVersion     :
    CloudKeyUpdatedOn   :
    CloudTrustDisplay   :
    

    Si votre domaine prend déjà en charge l’authentification FIDO, la cmdlet Get-AzureAdKerberosServer affiche des informations sur le compte de service Microsoft Entra, comme dans l’exemple de sortie suivant. Le champ CloudTrustDisplay retourne une valeur vide.

    ID                  : 25614
    UserAccount         : CN=krbtgt-AzureAD, CN=Users, DC=aadsqlmi, DC=net
    ComputerAccount     : CN=AzureADKerberos, OU=Domain Controllers, DC=aadsqlmi, DC=net
    DisplayName         : krbtgt_25614
    DomainDnsName       : aadsqlmi.net
    KeyVersion          : 53325
    KeyUpdatedOn        : 2/24/2022 9:03:15 AM
    KeyUpdatedFrom      : ds-aad-auth-dem.aadsqlmi.net
    CloudDisplayName    : krbtgt_25614
    CloudDomainDnsName  : aadsqlmi.net
    CloudId             : 25614
    CloudKeyVersion     : 53325
    CloudKeyUpdatedOn   : 2/24/2022 9:03:15 AM
    CloudTrustDisplay   :
    
  4. Ajoutez l’objet Domaine approuvé.

    Exécutez le cmdlet PowerShell Set-AzureAdKerberosServer pour ajouter l’objet Domaine approuvé. Assurez-vous d’inclure le paramètre -SetupCloudTrust. S’il n’existe aucun compte de service Microsoft Entra, cette commande crée un compte de service Microsoft Entra. Cette commande ne créera l’objet de domaine approuvé demandé que s’il existe déjà un compte de service Microsoft Entra.

    Set-AzureADKerberosServer -Domain $domain -UserPrincipalName $cloudUserName -DomainCredential $domainCred -SetupCloudTrust
    

    Remarque

    Sur une forêt de plusieurs domaines, pour éviter l’erreur LsaCreateTrustedDomainEx 0x549 lors de l’exécution de la commande sur un domaine enfant :

    1. Exécutez la commande sur le domaine racine (avec le paramètre -SetupCloudTrust).
    2. Exécutez la même commande sur le domaine enfant sans le paramètre -SetupCloudTrust.

    Après avoir créé l’objet domaine approuvé, vous pouvez vérifier le Paramètres Kerberos mis à jour à l’aide du cmdlet PowerShell Get-AzureAdKerberosServer, comme indiqué à l’étape précédente. Si le cmdlet Set-AzureAdKerberosServer a été exécuté avec succès avec le paramètre -SetupCloudTrust, le champ CloudTrustDisplay doit maintenant retourner Microsoft.AzureAD.Kdc.Service.TrustDisplay, comme dans l’exemple de sortie suivant :

    ID                  : 25614
    UserAccount         : CN=krbtgt-AzureAD, CN=Users, DC=aadsqlmi, DC=net
    ComputerAccount     : CN=AzureADKerberos, OU=Domain Controllers, DC=aadsqlmi, DC=net
    DisplayName         : krbtgt_25614
    DomainDnsName       : aadsqlmi.net
    KeyVersion          : 53325
    KeyUpdatedOn        : 2/24/2022 9:03:15 AM
    KeyUpdatedFrom      : ds-aad-auth-dem.aadsqlmi.net
    CloudDisplayName    : krbtgt_25614
    CloudDomainDnsName  : aadsqlmi.net
    CloudId             : 25614
    CloudKeyVersion     : 53325
    CloudKeyUpdatedOn   : 2/24/2022 9:03:15 AM
    CloudTrustDisplay   : Microsoft.AzureAD.Kdc.Service.TrustDisplay
    

    Notes

    Les clouds souverains Azure nécessitent la définition de la propriété TopLevelNames, qui est définie sur windows.net par défaut. Les déploiements du cloud souverain Azure de SQL Managed Instance utilisent un autre nom de domaine de niveau supérieur, par exemple usgovcloudapi.net pour Azure US Government. Définissez votre objet de domaine approuvé sur ce nom de domaine de niveau supérieur à l’aide de la commande PowerShell suivante : Set-AzureADKerberosServer -Domain $domain -DomainCredential $domainCred -CloudCredential $cloudCred -SetupCloudTrust -TopLevelNames "usgovcloudapi.net,windows.net". Vous pouvez utiliser le paramètre avec la commande PowerShell suivante : Get-AzureAdKerberosServer -Domain $domain -DomainCredential $domainCred -UserPrincipalName $cloudUserName | Select-Object -ExpandProperty CloudTrustDisplay.

Configurer l’objet Stratégie de groupe (GPO)

  1. Identifiez votre ID de locataire Microsoft Entra.

  2. Déployez le paramètre de Stratégie de groupe suivant sur les ordinateurs clients à l’aide du flux entrant basé sur la confiance :

    1. Modifiez le paramètre de stratégie Administrative Templates\System\Kerberos\Specify KDC proxy servers for Kerberos clients.

    2. Sélectionnez Enabled.

    3. Sous Options, sélectionnez Afficher.... La boîte de dialogue Afficher le contenu s’ouvre.

      Screenshot of dialog box to enable 'Specify KDC proxy servers for Kerberos clients'. The 'Show Contents' dialog allows input of a value name and the related value.

    4. Définissez les paramètres des serveurs proxy KDC à l’aide des mappages comme suit. Insérez votre ID de locataire Microsoft Entra dans l’espace réservé your_Azure_AD_tenant_id. Remarquez qu’il y a un espace après https et avant le / de fermeture dans le mappage des valeurs.

      Nom de la valeur Valeur
      KERBEROS.MICROSOFTONLINE.COM <https login.microsoftonline.com:443:your_Azure_AD_tenant_id/kerberos />

      Screenshot of the 'Define KDC proxy server settings' dialog box. A table allows input of multiple rows. Each row consists of a value name and a value.

    5. Sélectionnez OK pour fermer la boîte de dialogue « Afficher le contenu ».

    6. Sélectionnez Appliquer dans la boîte de dialogue « Spécifier les serveurs proxy KDC pour les clients Kerberos ».

Faire pivoter la clé Kerberos

Vous pouvez effectuer une rotation périodique de la clé Kerberos pour le compte de service Microsoft Entra créé et l’objet Domaine approuvé à des fins de gestion.

Set-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName -SetupCloudTrust `
   -RotateServerKey

Une fois la clé pivotée, la propagation de la clé modifiée entre les serveurs KDC Kerberos prend plusieurs heures. En raison de ce délai de distribution des clés, vous pouvez effectuer une rotation de la clé une fois dans les 24 heures. Si vous avez besoin d’effectuer une autre rotation de la clé dans les 24 heures (par exemple, après avoir créé l’objet de domaine approuvé), vous pouvez ajouter le paramètre -Force :

Set-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName -SetupCloudTrust `
   -RotateServerKey -Force

Supprimer l’objet Domaine approuvé

Vous pouvez supprimer l’objet Domaine approuvé ajouté à l’aide de la commande suivante :

Remove-AzureADKerberosTrustedDomainObject -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName

Cette commande supprime uniquement l’objet Domaine approuvé. Si votre domaine prend en charge l’authentification FIDO, vous pouvez supprimer l’objet de domaine approuvé tout en conservant le compte de service Microsoft Entra requis pour le service d’authentification FIDO.

Supprimer tous les paramètres Kerberos

Vous pouvez supprimer le compte de service Microsoft Entra et l’objet Domaine approuvé à l’aide de la commande suivante :

Remove-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName

Étapes suivantes

En savoir plus sur l’implémentation de l’authentification Windows pour les principaux Microsoft Entra sur Azure SQL Managed Instance :