Partager via


Outlook ne se connecte pas lors de l’utilisation de l’authentification moderne

Symptômes

Considérez le scénario suivant :

  • Votre organisation dispose d’un environnement Microsoft Exchange hybride.
  • La découverte automatique pointe vers le serveur Exchange local.
  • Vous disposez d’un client MSI professionnel Microsoft Outlook 2016.

Dans ce scénario, lorsque vous essayez d’ajouter votre compte de messagerie Exchange Online à Outlook, l’invite d’authentification moderne est vide après avoir entré vos informations d’identification Exchange Online. Par conséquent, vous ne pouvez pas continuer à ajouter le compte à votre profil Outlook par défaut.

La cause

Lorsque vous entrez vos informations d’identification, le client Outlook se connecte à Exchange Online pour demander un jeton OAuth pour le principe de ressource de découverte automatique locale. Toutefois, l’authentification échoue, car le principal de ressource est soit :

  • Manquant dans la liste des noms de service principal (SPNs) dans l'espace de travail Microsoft Entra
  • Dans un état non valide au sein du locataire Microsoft Entra

Résolution

Pour ajouter votre compte de messagerie Exchange Online à Outlook, utilisez l’une des résolutions suivantes.

Résolution 1

Utilisez une version Démarrer en un clic d’Outlook.

Remarque : Les versions d’Outlook Démarrer en un clic déterminent si un compte d’utilisateur existe dans Exchange Online, comme décrit à l’étape 4 de l’implémentation d’Outlook 2016 de la découverte automatique.

Résolution 2

Pour ajouter la ressource Autodiscover manquante à la liste SPN dans le tenant Microsoft Entra, procédez comme suit :

  1. Déterminez le nom du principal de ressource à l’aide de l’une des méthodes suivantes :

    • Recherchez dans les journaux de connexion Microsoft Entra le message d’échec de connexion suivant :

      "status": {  
         "errorCode": 500011,  
         "failureReason": "The resource principal named <resource principal name> was not found in the tenant named <tenant name>. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You might have sent your authentication request to the wrong tenant."
      

      Obtenez le nom du principal de ressource à partir du message de log.

    • Lorsque vous entrez vos informations d’identification pour ajouter votre compte de messagerie Exchange Online, utilisez un analyseur de protocole réseau pour capturer le trafic réseau. Recherchez le trafic réseau capturé pour une requête POST qui contient tous les éléments suivants :

      • URL de point de terminaison qui contient oauth2/token HTTP/1.1

      • Code d’état de réponse HTTP 400 (requête incorrecte)

      • Message d’erreur dans le corps de la réponse qui ressemble au message suivant :

        {"error":"invalid_resource","error_description":"AADSTS500011: The resource principal named <resource principal name> was not found in the tenant named <tenant name>. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You might have sent your authentication request to the wrong tenant.
        

        Obtenez le nom du principal de ressource à partir du message d’erreur.

    Un exemple de nom de principal de ressource est https://autodiscover.contoso.com.

  2. Ajoutez le nom du principal de ressource à la liste des SPN dans le locataire Microsoft Entra en suivant la procédure décrite dans l’étape 5 : Inscrivez toutes les autorités de nom d’hôte pour vos points de terminaison HTTP Exchange internes et externes.

  3. Vérifiez que le nom principal de la ressource figure dans la liste des noms principaux de service (SPN) dans Microsoft Entra ID.

    1. Exécutez les applets de commande suivantes pour installer et se connecter à Microsoft Graph :

      Install-Module Microsoft.Graph.Applications
      Import-Module Microsoft.Graph.Applications
      Connect-MgGraph -Scopes Application.Read.All
      

      Lorsque vous y êtes invité, connectez-vous pour accorder le consentement.

    2. Exécutez l’applet de commande suivante pour répertorier les SPNs dans Microsoft Entra ID :

      $ServiceName = "00000002-0000-0ff1-ce00-000000000000"
      Get-MgServicePrincipal -Filter "AppId eq '$ServiceName'" | Select-Object -ExpandProperty ServicePrincipalNames | Sort-Object
      

Conseil / Astuce

Pour vérifier que les points de terminaison Exchange Server et Exchange Online locaux peuvent s’authentifier mutuellement , utilisez l’applet de commande Test-OAuthConnectivity .