Résolution des problèmes AD FS - Fiddler - WS-Federation
Étapes 1 et 2
C’est le début de notre trace. Dans ce cadre, nous voyons les éléments suivants :
Demande :
- HTTP GET à notre partie de confiance (https://sql1.contoso.com/SampApp)
Réponse :
- La réponse est un HTTP 302 (redirection). Les données de transport dans l’en-tête Réponse indiquent l’emplacement vers lequel rediriger (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.
Étape 3 et 4
Demande :
- HTTP GET vers notre serveur AD FS (sts.contoso.com)
Réponse :
- La réponse est une invite d’informations d’identification. Cela indique que nous utilisons l’authentification par formulaire
- En cliquant sur le WebView de la réponse, vous pouvez voir l’invite d’informations d’identification.
Étape 5 et 6
Demande :
- 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
Réponse :
- La réponse est Trouvé et le cookie chiffré MSIAuth est créé et retourné. Ceci est utilisé pour valider l’assertion SAML produite par notre client. Il est également appelé « cookie d’authentification » et ne sera présent que lorsque AD FS est le fournisseur d’identité.
Étape 7 et 8
Demande :
- Maintenant que nous avons authentifié, nous effectuons une autre requête HTTP GET sur le serveur AD FS et présentons notre jeton d’authentification
Réponse :
- La réponse est une erreur HTTP OK, ce qui signifie qu’AD FS a authentifié l’utilisateur en fonction des informations d’identification fournies
- En outre, nous définissons 3 cookies sur le 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 codé 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
Demande :
- HTTP POST
Réponse :
- La réponse est Trouvé
Étape 11 et 12
Demande :
- HTTP GET
Réponse :
- La réponse est OK