Risoluzione dei problemi di AD FS - Fiddler - WS-Federation

AD FS and Windows Server Federation diagram

Passaggio 1 e 2

Questo è l'inizio della nostra traccia. In questo frame viene visualizzato quanto segue:

Start of Fiddler trace

Richiesta:

Risposta:

  • La risposta è http 302 (reindirizzamento). I dati trasporto nell'intestazione della risposta indicano dove reindirizzare a (https://sts.contoso.com/adfs/ls)
  • L'URL di reindirizzamento contiene wa=wsignin 1.0 che indica che l'applicazione RP ha compilato una richiesta di accesso WS-Federation per microsoft e l'ha inviata all'endpoint /adfs/ls/ di AD FS. Questa operazione è nota come associazione di reindirizzamento.

Transport data in the Response header

Passaggio 3 e 4

Continuation Fiddler trace

Richiesta:

  • HTTP GET per il server AD FS (sts.contoso.com)

Risposta:

  • La risposta è una richiesta di credenziali. Ciò indica che viene usata l'autenticazione basata su form
  • Facendo clic su WebView della risposta puli visualizzare il prompt delle credenziali.

Screenshot of the web view of the response showing the credentials prompt.

Passaggio 5 e 6

WebView tab of the prompt for credentials Prompt screen

Richiesta:

  • HTTP POST con nome utente e password
  • Vengono presentate le credenziali. Esaminando i dati non elaborati nella richiesta è possibile visualizzare le credenziali

Risposta:

  • La risposta viene trovata e viene restituito il cookie crittografato MSIAuth. Viene usato per convalidare l'asserzione SAML prodotta dal client. Questa operazione è nota anche come "cookie di autenticazione" e sarà presente solo quando AD FS è il provider di identità.

Passaggio 7 e 8

Screenshot of the of Fiddler trace showing the H T T P Get request and the response to that request.

Richiesta:

  • Ora che è stata eseguita l'autenticazione, si esegue un'altra operazione HTTP GET nel server AD FS e si presenta il token di autenticazione

Risposta:

  • La risposta è un OK HTTP che significa che AD FS ha autenticato l'utente in base alle credenziali fornite
  • Inoltre, abbiamo impostato 3 cookie di nuovo sul client
    • MSISAuthenticated contiene un valore timestamp con codifica Base64 per quando il client è stato autenticato.
    • MSISLoopDetectionCookie viene usato dal meccanismo di rilevamento di cicli infiniti di AD FS per arrestare i client che sono finiti in un ciclo di reindirizzamento infinito al server federativo. I dati dei cookie sono un timestamp codificato in base64.
    • MSISSignout viene usato per tenere traccia del provider di identità e di tutti gli indirizzi IP visitati per la sessione SSO. Questo cookie viene utilizzato quando viene richiamata una WS-Federation disconnessa. Puoi visualizzare il contenuto di questo cookie usando un decodificatore Base64.

Passaggio 9 e 10

Screenshot of the of Fiddler trace showing the H T T P Post request and the response to that request.

Richiesta:

  • HTTP POST

Risposta:

  • La risposta è trovata

Passaggio 11 e 12

Finalization of Fiddler trace

Richiesta:

  • HTTP GET

Risposta:

  • La risposta è OK

Passaggi successivi