none
Probleme mit Sign-Out über SAML2 (SimpleSamlPhp) und Azure AD

    Frage

  • Hallo,

    ich versuche mit Hilfe des SimpleSamlPhp-Dienstes die Authentifizierung eines Benutzers an Azure AD zu ermöglichen. Den SimpleSamlPhp-Service brauche ich für eine PHP-Webanwenung (Elgg), die mit Hilfe eines Plug-Ins die Anmeldung über SAML unterstützt.

    Wie man im SimpleSamlPhp einen Azure AD IdP konfiguriert, habe ich auf einer japanischen Seite gefunden:http://blogs.msdn.com/b/tsmatsuz/archive/2014/01/30/azure-ad-and-php-application-sso-federation-using-simplesamlphp.aspx

    Sign-In funktioniert soweit. Ich habe aber noch ein Problem mit Sign-Out. Ich bekomme beim Versuch einen Benutzer abzumelden folgende Fehlermeldung:

    ################################

    Sign out

    Sorry, but we're having trouble signing you out.
    We received a bad request.

    Additional technical information:
    Trace ID: 5bb91d05-de09-4515-9da6-f2234a0c5c10
    Timestamp: 2014-07-30 07:27:03Z
    ACS75014: An error occurred while processing a SAML logout request.

    #########################################

    Google hat mich leider nicht viel weitergebracht :-(

    Das Request-Telegram, das an Azure gesendet wird, sieht wie in der Logdatei des SimpleSamlPhp-Dienstes protokolliert folgendermaßen (einige IDs wurden von mir geändert) aus:

    Saved state: '_c6effbdebf01c619bfd0d41d1e92752ef61371c7b8'
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe] Sending message:
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe] <samlp:LogoutRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="_f12949a3f0b9420237b85bea3e57c0477f55c95bb5" Version="2.0" IssueInstant="2014-07-30T07:27:02Z" Destination="https://login.windows.net/e35df11a-7f8c-444d-8024-e8925a8e02f9/saml2">
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe]   <saml:Issuer>spn:9c888881-57d0-4a56-77d4-f6d895fad4a8</saml:Issuer>
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe]   <saml:NameID>2ftgetrtrtksk25353536-dummy</saml:NameID>
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe]   <samlp:SessionIndex>_6b7e365e-0c56-4659-787878-787878878</samlp:SessionIndex>
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe] </samlp:LogoutRequest>
    Jul 30 09:27:02 simplesamlphp DEBUG [d0b7412ebe] Redirect to 636 byte URL: https://login.windows.net/a4534e-7f8c-78954-78455-e8925a8e02f9/saml2?SAMLRequest=fZLbTsMwDIZfZep91jRNmoO2SqBpYjAO2gABNyhtEqjoklJnwOPTbSABF1xZsvX99m97AnrTdmoZnsI2ruzr1kIcfWxaD2pfmSbb3qugoQHl9caCirVaH50vFRlj1fUhhjq0yQ%2Fkf0ID2D42wSejxWyaPLqMSCp17nAlKcEk55VgldW5ZbzGlHPHWC1ZVbFkdGt7GMhpMggNOMDWLjxE7eOQwhlFmKMcX2OuCFeYPCSj2eCm8TruqecYO1Bp2oanxo%2FfG2%2FCO4y9janNmXFZphF3okaUUoMEJhRZIQnTwmLiZLrzRpJysotq37wvofNK1oIJKTPEuMGIalYgKQ1FrjCc504bqsUk%2FUkdJC6G3SxmJeniFTu5F8VJey9fNnerGULzNazu5seXy%2FM5O3s7On7uTsnV5c2Xyhc4OVxubWG3lIU39qN8LCpu84JZhOthDlowiSQvOMKYaVfxTBpiDjJ%2FyO%2Fkr0coPwE%3D&RelayState=_c6effbdebf01c619bfd0d41d1e92752ef61371c7b8

    #############################################################

    Wie Sign-Out mit SAML und Azure AD funktioniert ist auf folgender MSDN-Seite beschrieben:

    http://msdn.microsoft.com/en-us/library/azure/dn195588.aspx

    Ich hab auch schon alle Felder bzw. den Inhalt des SAML-Telegramms überprüft. Ich finde aber keinen Fehler. Gibt es eine Möglichkeit (Logfile oder Diagnosefenster...) festzustellen, was mit dem LogoutRequest nicht stimmt? Hat jemand einen Tipp? Oder vielleicht ein funktionierendes Beispiel für SAML2 Sign-Out und Azure AD :-)

    Vielen Dank & Gruß

    Adam
    Mittwoch, 30. Juli 2014 07:48

Alle Antworten

  • Hallo zusammen,

    jetzt geht's. Ich hab die von Simplesamlphp generierten FederationMetadata.xml (https://localhost/simplesaml/module.php/saml/sp/metadata.php/default-sp) auf einen öffentlichen Webserver kopiert und die URL im Azure-Verwaltungsportal im Feld 'Verbundmetadaten-URL' eingetragen.

    Gruß,

    Adam

    Montag, 25. August 2014 10:02