Partager via


Résolution des problèmes AD FS - Fiddler - WS-Federation

Diagramme de fédération AD FS et Windows Server

Étape 1 et 2

C’est le début de notre trace. Dans ce cadre, nous voyons les éléments suivants :

Début de la trace Fiddler

Request:

  • HTTP GET à notre partie de confiance (https://sql1.contoso.com/SampApp)

Response:

  • La réponse est http 302 (redirection). Les données de transport dans l’en-tête Réponse indiquent où effectuer une redirection vers (https://sts.contoso.com/adfs/ls)
  • L’URL de redirection contient wa=wsignin 1.0 qui nous indique que notre application rp a créé une demande de connexion WS-Federation pour nous et l’a envoyée au point de terminaison /adfs/ls/ d’AD FS. Il s’agit de la liaison de redirection.

Données de transport dans l’en-tête de réponse

Étape 3 et 4

Continuation de la trace Fiddler

Request:

  • HTTP GET vers notre serveur AD FS (sts.contoso.com)

Response:

  • La réponse est une invitation à fournir des identifiants. Cela indique que nous utilisons l’authentification par formulaire
  • En cliquant sur la vue Web de la réponse, vous pouvez voir la fenêtre d'authentification.

Capture d’écran de l’affichage web de la réponse montrant l’invite de connexion.

Étape 5 et 6

Onglet WebView de l'écran de demande d'informations d'identification

Request:

  • HTTP POST avec notre nom d’utilisateur et notre mot de passe.
  • Nous présentons nos informations d’identification. En examinant les données brutes dans la demande, nous pouvons voir les informations d’identification

Response:

  • La réponse est Trouvée et le cookie chiffré MSIAuth est créé et retourné. Ceci est utilisé pour valider l’assertion SAML produite par notre client. Il s’agit également du « cookie d’authentification » et ne sera présent que lorsque AD FS est l'IdP (Identity Provider).

Étape 7 et 8

Capture d’écran de la trace Fiddler montrant la requête HTTP GET et la réponse à cette requête.

Request:

  • Maintenant que nous avons authentifié, nous effectuons un autre HTTP GET sur le serveur AD FS et présentons notre jeton d’authentification

Response:

  • La réponse est un HTTP OK, ce qui signifie que AD FS a authentifié l'utilisateur en fonction des identifiants fournis.
  • De plus, nous renvoyons 3 cookies au client
    • MSISAuthenticated contient une valeur d’horodatage codée en base64 pour le moment où le client a été authentifié.
    • MSISLoopDetectionCookie est utilisé par le mécanisme de détection de boucle infinie AD FS pour arrêter les clients qui se sont retrouvés dans une boucle de redirection infinie vers le serveur de fédération. Les données de cookie sont un horodatage encodé en base64.
    • MSISSignout est utilisé pour effectuer le suivi du fournisseur d’identité et de tous les fournisseurs de services visités pour la session d’authentification unique. Ce cookie est utilisé lorsqu’une déconnexion WS-Federation est appelée. Vous pouvez voir le contenu de ce cookie à l’aide d’un décodeur base64.

Étape 9 et 10

Capture d’écran de la trace Fiddler montrant la requête HTTP Post et la réponse à cette requête.

Request:

  • HTTP POST

Response:

  • La réponse est Trouvé

Étape 11 et 12

Finalisation de la trace Fiddler

Request:

  • HTTP GET

Response:

  • La réponse est OK

Next Steps