Prise en charge d’IPv6 dans Microsoft Entra ID

Remarque

Cet article vous a-t-il été utile ? Votre avis est important à nos yeux. Utilisez le bouton Commentaires sur cette page pour nous faire savoir dans quelle mesure cet article vous a été utile ou comment nous pouvons l’améliorer.

Nous sommes ravis d’apporter la prise en charge IPv6 à Microsoft Entra ID, de prendre en charge les clients avec une mobilité accrue et de réduire les dépenses en adresses IPv4 rapides et coûteuses. Pour plus d’informations sur la façon dont cette modification peut affecter Microsoft 365, consultez Prise en charge d’IPv6 dans les services Microsoft 365.

Si les réseaux de votre organization ne prennent pas en charge IPv6 aujourd’hui, vous pouvez ignorer ces informations en toute sécurité jusqu’à ce qu’ils le fassent.

Qu’est-ce qui change ?

Nos URL de point de terminaison de service seront désormais résolues pour retourner les adresses IPv4 et IPv6. Si une plateforme cliente ou un réseau prend en charge IPv6, la connexion est principalement tentée à l’aide d’IPv6, en supposant que les tronçons réseau qui se trouvent entre les deux (tels que les pare-feu ou les proxys web) prennent également en charge IPv6. Pour les environnements qui ne prennent pas en charge IPv6, les applications clientes continueront à se connecter à Microsoft Entra ID via IPv4.

Les fonctionnalités suivantes prennent également en charge les adresses IPv6 :

  • Emplacements nommés
  • Stratégies d’accès conditionnel
  • Protection de l’identité
  • Journaux de connexion

Quand IPv6 sera-t-il pris en charge dans Microsoft Entra ID ?

Nous allons commencer à introduire la prise en charge IPv6 pour Microsoft Entra ID en avril 2023.

Nous savons que la prise en charge d’IPv6 est un changement important pour certaines organisations. Nous publions ces informations maintenant afin que les clients puissent planifier leur préparation.

Que doit faire mon organization ?

Si vous avez des adresses IPv6 publiques représentant votre réseau, effectuez les actions décrites dans les sections suivantes dès que possible.

Si les clients ne mettent pas à jour leurs emplacements nommés avec ces adresses IPv6, leurs utilisateurs sont bloqués.

Capture d’écran montrant la connexion d’un utilisateur bloquée en raison de son emplacement réseau.

Actions à entreprendre

Emplacements nommés

Les emplacements nommés sont partagés entre de nombreuses fonctionnalités, telles que l’accès conditionnel, Identity Protection et B2C. Les clients doivent s’associer à leurs administrateurs réseau et fournisseurs de services Internet (ISP) pour identifier leurs adresses IPv6 publiques. Les clients doivent ensuite utiliser cette liste pour créer ou mettre à jour des emplacements nommés, afin d’inclure leurs adresses IPv6 identifiées.

Accès conditionnel

Lors de la configuration des stratégies d’accès conditionnel, les organisations peuvent choisir d’inclure ou d’exclure des emplacements comme condition. Ces emplacements nommés peuvent inclure des adresses IPv4 ou IPv6 publiques, un pays ou une région ou des zones inconnues qui ne correspondent pas à des pays ou des régions spécifiques.

  • Si vous ajoutez des plages IPv6 à un emplacement nommé existant, utilisé dans les stratégies d’accès conditionnel existantes, aucune modification n’est nécessaire.
  • Si vous créez des emplacements nommés pour les plages IPv6 de votre organization, vous devez mettre à jour les stratégies d’accès conditionnel pertinentes avec ces nouveaux emplacements.

Proxys et VPN cloud

Lorsqu’un proxy cloud est en place, une stratégie qui nécessite un appareil Microsoft Entra hybride joint ou de plainte peut être plus facile à gérer. Il peut être presque impossible de tenir à jour la liste des adresses IP utilisées par votre proxy hébergé dans le cloud ou votre solution VPN.

Microsoft Entra l’authentification multifacteur par utilisateur

Si vous êtes un client qui utilise l’authentification multifacteur par utilisateur, avez-vous ajouté des adresses IPv4 qui représentent des réseaux locaux approuvés utilisant des adresses IP approuvées au lieu d’emplacements nommés ? Si vous l’avez fait, vous pouvez voir une invite d’authentification multifacteur pour une demande qui a été lancée via des points de sortie IPv6 locaux.

L’utilisation de l’authentification multifacteur par utilisateur n’est pas recommandée, sauf si vos licences Microsoft Entra ID n’incluent pas l’accès conditionnel et que vous ne souhaitez pas utiliser les paramètres de sécurité par défaut.

Restrictions de trafic sortant

Si votre organization limite le trafic réseau sortant à des plages d’adresses IP spécifiques, vous devez mettre à jour ces adresses pour inclure des points de terminaison IPv6. Les administrateurs peuvent trouver ces plages d’adresses IP dans les articles suivants :

Pour les plages d’adresses IP spécifiées pour Microsoft Entra ID, veillez à autoriser l’accès sortant dans votre proxy ou pare-feu.

Configuration des appareils

Par défaut, le trafic IPv6 et IPv4 est pris en charge sur Windows et sur la plupart des autres plateformes de système d’exploitation. Les modifications apportées à la configuration IPv6 standard peuvent entraîner des conséquences inattendues. Pour plus d’informations, consultez Conseils pour la configuration d’IPv6 dans Windows pour les utilisateurs avancés.

Points de terminaison de service

L’implémentation de la prise en charge d’IPv6 dans Microsoft Entra ID n’affecte pas les points de terminaison de service Azure Réseau virtuel. Les points de terminaison de service ne prennent toujours pas en charge le trafic IPv6. Pour plus d’informations, consultez Limitations des points de terminaison de service Réseau virtuel.

Tester l’authentification Microsoft Entra via IPv6

Vous pouvez tester Microsoft Entra’authentification sur IPv6 avant de l’activer dans le monde entier en utilisant les procédures suivantes. Ces procédures permettent de valider les configurations de plage IPv6. L’approche recommandée consiste à utiliser une règle NRPT (Name Resolution Policy Table) envoyée (push) à vos appareils Windows Microsoft Entra joints. Dans Windows Server, NRPT vous permet d’implémenter une stratégie globale ou locale qui remplace les chemins de résolution DNS. Avec cette fonctionnalité, vous pouvez rediriger DNS pour différents noms de domaine complets (FQDN) vers des serveurs DNS spéciaux configurés pour avoir des entrées DNS IPv6 pour Microsoft Entra connexion. Il est simple d’activer et de désactiver des règles NRPT à l’aide d’un script PowerShell. Vous pouvez utiliser Microsoft Intune pour envoyer cette fonctionnalité aux clients.

Remarque

  • Microsoft fournit ces instructions à des fins de test uniquement. Vous devez supprimer les configurations suivantes avant mai 2023 pour vous assurer que vos clients utilisent des serveurs DNS de production. Les serveurs DNS dans les procédures suivantes peuvent être désactivés après mai 2023.

  • Nous vous recommandons d’utiliser l’applet de commande Resolve-DnsName pour valider les règles NRPT. Si vous utilisez la commande nslookup , le résultat peut être différent en fonction des différences qui existent entre ces outils.

  • Vérifiez que vous disposez d’une connectivité réseau ouverte sur les ports TCP et UDP 53 entre vos appareils clients et les serveurs DNS utilisés pour la règle NRPT.

Configurer manuellement une règle NRPT cliente - cloud public

  1. Ouvrez une console PowerShell en tant qu’administrateur (cliquez avec le bouton droit sur l’icône PowerShell et sélectionnez Exécuter en tant qu’administrateur).

  2. Ajoutez une règle NRPT en exécutant les commandes suivantes :

    $DnsServers = (
        "ns1-37.azure-dns.com.",
        "ns2-37.azure-dns.net.",
        "ns3-37.azure-dns.org.",
        "ns4-37.azure-dns.info."
    )
    $DnsServerIPs = $DnsServers | Foreach-Object {
        (Resolve-DnsName $_).IPAddress | Select-Object -Unique
    }
    $params = @{
        Namespace = "login.microsoftonline.com"
        NameServers = $DnsServerIPs
        DisplayName = "AZURE-AD-NRPT"
    }
    Add-DnsClientNrptRule @params
    
  3. Vérifiez que votre client obtient des réponses IPv6 pour login.microsoftonline.com en exécutant l’applet de commande Resolve-DnsName . La sortie de la commande doit ressembler au texte suivant :

    PS C:\users\username> Resolve-DnsName login.microsoftonline.com
    Name                          Type   TTL   Section    IPAddress 
    ----                          ----   ---   -------    --------- 
    login.microsoftonline.com     AAAA   300   Answer     2603:1037:1:c8::8 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d8::5 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d0::5 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d8::4 
    login.microsoftonline.com     AAAA   300   Answer     2603:1037:1:c8::9 
    login.microsoftonline.com     AAAA   300   Answer     2603:1037:1:c8::a 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d8::2 
    login.microsoftonline.com     AAAA   300   Answer     2603:1036:3000:d0::7 
    login.microsoftonline.com     A      300   Answer     20.190.151.7 
    login.microsoftonline.com     A      300   Answer     20.190.151.67 
    login.microsoftonline.com     A      300   Answer     20.190.151.69 
    login.microsoftonline.com     A      300   Answer     20.190.151.68 
    login.microsoftonline.com     A      300   Answer     20.190.151.132 
    login.microsoftonline.com     A      300   Answer     20.190.151.70 
    login.microsoftonline.com     A      300   Answer     20.190.151.9 
    login.microsoftonline.com     A      300   Answer     20.190.151.133 
    
  4. Si vous souhaitez supprimer la règle NRPT, exécutez ce script PowerShell :

    Get-DnsClientNrptRule | Where-Object {
        $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
    } | Remove-DnsClientNrptRule -Force
    

Configurer manuellement une règle NRPT cliente - CLOUD US Gov

À l’instar du script pour le cloud public, le script suivant crée une règle NRPT pour le point de terminaison login.microsfotonline.usde connexion US Gov .

  1. Ouvrez une console PowerShell en tant qu’administrateur en cliquant avec le bouton droit sur l’icône PowerShell et en sélectionnant Exécuter en tant qu’administrateur.

  2. Ajoutez une règle NRPT en exécutant les commandes suivantes :

    $DnsServers = (
        "ns1-35.azure-dns.com.",
        "ns2-35.azure-dns.net.",
        "ns3-35.azure-dns.org.",
        "ns4-35.azure-dns.info."
    )
    $DnsServerIPs = $DnsServers | Foreach-Object {
        (Resolve-DnsName $_).IPAddress | Select-Object -Unique
    }
    $params = @{
        Namespace = "login.microsoftonline.us"
        NameServers = $DnsServerIPs
        DisplayName = "AZURE-AD-NRPT-USGOV"
    }
    Add-DnsClientNrptRule @params
    

Déployer une règle NRPT avec Intune

Pour déployer la règle NRPT sur plusieurs machines à l’aide de Intune, créez une application Win32 et affectez-la à un ou plusieurs appareils.

Étape 1 : Créer les scripts

Créez un dossier, puis enregistrez les scripts d’installation et de restauration suivants (InstallScript.ps1 et RollbackScript.ps1) afin de pouvoir créer le fichier .intunewin à utiliser dans le déploiement.

InstallScript.ps1
# Add Azure AD NRPT rule.
$DnsServers = (
    "ns1-37.azure-dns.com.",
    "ns2-37.azure-dns.net.",
    "ns3-37.azure-dns.org.",
    "ns4-37.azure-dns.info."
)
$DnsServerIPs = $DnsServers | Foreach-Object {
    (Resolve-DnsName $_).IPAddress | Select-Object -Unique
}

# List the rules.
$existingRules = Get-DnsClientNrptRule | Where-Object {
    $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
}
if ($existingRules) { 
    Write-Output ("Azure AD NRPT rule exists: {0}" -F $existingRules) 
} 
else { 
    Write-Output "Adding Azure AD NRPT DNS rule for login.microsoftonline.com ..." 
    $params = @{
        Namespace = "login.microsoftonline.com"
        NameServers = $DnsServerIPs
        DisplayName = "AZURE-AD-NRPT"
    }
    Add-DnsClientNrptRule @params
}  
RollbackScript.ps1
# Remove the Azure AD NRPT rule.
# List the rules.
$existingRules = Get-DnsClientNrptRule | Where-Object {
    $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
}
if ($existingRules) { 
    Write-Output "Removing Azure AD NRPT DNS rule for login.microsoftonline.com ..." 
    $existingRules | Format-Table 
    $existingRules | Remove-DnsClientNrptRule -Force 
} 
else { 
    Write-Output "Azure AD NRPT rule does not exist. Device was successfully remediated."
}
DetectionScript.ps1

Enregistrez le script suivant (DetectionScript.ps1) dans un autre emplacement. Ensuite, vous pouvez référencer le script de détection dans l’application lorsque vous le créez dans Intune.

# Add Azure AD NRPT rule.
$DnsServers = (
    "ns1-37.azure-dns.com.",
    "ns2-37.azure-dns.net.",
    "ns3-37.azure-dns.org.",
    "ns4-37.azure-dns.info."
)
$DnsServerIPs = $DnsServers | Foreach-Object {
    (Resolve-DnsName $_).IPAddress | Select-Object -Unique
}
# List the rules.
$existingRules = Get-DnsClientNrptRule | Where-Object {
    $_.DisplayName -match "AZURE-AD-NRPT" -or $_.Namespace -match "login.microsoftonline.com"
}
if ($existingRules) { 
    Write-Output 'Compliant' 
}  

Étape 2 : Empaqueter les scripts en tant que fichier .intunewin

Consultez Préparer le contenu de l’application Win32 pour le chargement pour créer un fichier .intunewin à partir du dossier et des scripts que vous avez enregistrés précédemment.

Étape 3 : Créer l’application Win32

Les instructions suivantes vous montrent comment créer l’application Win32 nécessaire. Pour plus d’informations, consultez Ajouter, attribuer et surveiller une application Win32 dans Microsoft Intune.

  1. Connectez-vous au portail Intune.

  2. Sélectionnez Applications>Toutes les applications, puis + Ajouter pour créer une application Win32.

  3. Dans la liste déroulante Type d’application, sélectionnez Application Windows (Win32), puis sélectionnez Sélectionner.

  4. Dans la page Informations sur l’application, cliquez sur Sélectionner le fichier de package d’application pour sélectionner le fichier .intunewin que vous avez créé précédemment. Sélectionnez OK pour continuer.

  5. Revenez à la page Informations sur l’application, puis entrez un nom, une description et un serveur de publication descriptifs pour l’application. Les autres champs sont facultatifs. Sélectionnez Suivant pour continuer.

  6. Dans la page Programme , entrez les informations suivantes, puis sélectionnez Suivant.

    • Chaîne de commande d’installation :
      powershell.exe -executionpolicy bypass -NoLogo -NoProfile -NonInteractive -WindowStyle Hidden -file "InstallScript.ps1"
    • Désinstaller la chaîne de commande :
      powershell.exe -executionpolicy bypass -NoLogo -NoProfile -NonInteractive -WindowStyle Hidden -file "RollbackScript.ps1"
    • Comportement d’installation :
      System
  7. Dans la page Configuration requise, sélectionnez architectures de système d’exploitation et définissez Système d’exploitation minimalsur Windows 10 1607. Sélectionnez Suivant pour continuer.

  8. Dans la page Détection , sélectionnez Utiliser un script de détection personnalisé dans la liste déroulante Format des règles . Sélectionnez le bouton Parcourir en regard de la zone Fichier de script pour choisir le script de détection. Conservez les champs restants comme valeurs par défaut. Sélectionnez Suivant pour continuer.

  9. Sélectionnez Suivant dans la page Dépendances pour continuer sans aucune modification.

  10. Sélectionnez Suivant dans la page Remplacement (préversion) pour continuer sans aucune modification.

  11. Dans la page Affectations , créez des devoirs en fonction de vos besoins, puis sélectionnez Suivant pour continuer.

  12. Passez en revue les informations une dernière fois dans la page Vérifier + créer . Une fois votre validation terminée, sélectionnez Créer pour créer l’application.

Rechercher des adresses IPv6 dans les journaux de connexion

À l’aide d’une ou de plusieurs des méthodes suivantes, comparez la liste des adresses IPv6 aux adresses attendues. Envisagez d’ajouter ces adresses IPv6 à vos emplacements nommés et de marquer certaines comme approuvées le cas échéant. Vous devez au moins attribuer le rôle Lecteur de rapports pour lire le journal de connexion.

Portail Azure

  1. Connectez-vous à l’Portail Azure en tant que Lecteur de rapports, Lecteur sécurité, Lecteur général, Administrateur de la sécurité ou autre rôle avec l’autorisation.
  2. Accédez à Microsoft Entra ID>Journaux de connexion.
  3. Sélectionnez + Ajouter uneadresse IPde filtres>, puis sélectionnez Appliquer.
  4. Dans la zone Filtrer par adresse IP , insérez un signe deux-points ( :).
  5. Si vous le souhaitez, téléchargez cette liste d’entrées de journal au format JSON ou CSV pour un traitement ultérieur.

Log Analytics

Si votre organization utilise Log Analytics, vous pouvez interroger des adresses IPv6 dans vos journaux à l’aide de la requête suivante.

union SigninLogs, AADNonInteractiveUserSignInLogs
| where IPAddress has ":"
| summarize RequestCount = count() by IPAddress, AppDisplayName, NetworkLocationDetails
| sort by RequestCount

PowerShell

Les organisations peuvent utiliser le script PowerShell suivant pour interroger les journaux de connexion Microsoft Entra dans Microsoft Graph PowerShell. Le script vous fournit une liste des adresses IPv6, ainsi que l’application et le nombre de fois où elle apparaît.

$tId = "TENANT ID"  # Add the Azure Active Directory tenant ID.
$agoDays = 2  # Will filter the log for $agoDays from the current date and time.
$startDate = (Get-Date).AddDays(-($agoDays)).ToString('yyyy-MM-dd')  # Get filter start date.
$pathForExport = "./"  # The path to the local filesystem for export of the CSV file. 

Connect-MgGraph -Scopes "AuditLog.Read.All" -TenantId $tId 

# Get both interactive and non-interactive IPv6 sign-ins.
$signInsInteractive = Get-MgAuditLogSignIn -Filter "contains(IPAddress, ':')" -All
$signInsNonInteractive = Get-MgAuditLogSignIn -Filter "contains(IPAddress, ':')" -All 

# Summarize IPv6 & app display name count.
$signInsInteractive |
    Group-Object IPaddress, AppDisplayName |
    Select-Object @{Name = 'IPaddress'; Expression = {$_.Group[0].IPaddress}},
        @{Name = 'AppDisplayName'; Expression = {$_.Group[0].AppDisplayName}},
        Count |
    Sort-Object -Property Count –Descending |
    Export-Csv -Path ($pathForExport + "Summary_Interactive_IPv6_$tId.csv") -NoTypeInformation
$signInsNonInteractive |
    Group-Object IPaddress, AppDisplayName |
    Select-Object @{Name = 'IPaddress'; Expression = {$_.Group[0].IPaddress}},
        @{Name = 'AppDisplayName'; Expression = {$_.Group[0].AppDisplayName}},
        Count |
    Sort-Object -Property Count –Descending |
    Export-Csv -Path ($pathForExport + "Summary_NonInteractive_IPv6_$tId.csv") -NoTypeInformation

Étapes suivantes

Nous allons maintenir cet article à jour. Voici un lien court que vous pouvez utiliser pour revenir à des informations mises à jour et nouvelles : https://aka.ms/azureadipv6.

Contactez-nous pour obtenir de l’aide

Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.