ACS75005 "Die Anfrage ist nicht gültig SAML2-Protokoll-Nachricht." Zeigt immer wenn ich eine Verbindung zu Windows Azure Active Directory mithilfe von SAML
Ich versuche zu konsumieren, Windows Azure Active Directory als ein IdP in eine web-Anwendung. Mein code funktioniert auf anderen SAML-IdPs gibt aber die folgende Meldung in Windows Azure AD nur !!
Anmelden
Sorry, aber wir haben Probleme bei der Anmeldung bei.
Erhielten wir einen bad request.
Weitere technische Informationen:Trace-ID:8377e605-6b9f-47be-8547-5fce7f4285af
Zeitstempel: 2014-08-04 13:31:27Z
ACS75005:
Antrag ist keine gültige SAML2-Protokoll-Nachricht.
Ersetzte ich meinen code und verwendet die SAML-Anforderung, die Microsoft veröffentlicht hier und ersetzt nur einige Werte, die aber noch immer die gleiche Fehlermeldung!!!!
Was ist falsch mit meinem Anliegen? Und wie bekomme ich mehr details über die Nachricht !
Wissen, dass meine Anwendung definiert ist, die in der Windows Azure AD-Anwendungen.
<samlp:AuthnRequest xmlns="urn:oasis:names:tc:SAML:2.0:metadata" ID="_56dbfeac-107a-46d2-b989-651f90107312" Version="2.0" IssueInstant="2014-08-04T13:28:05Z" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">SOMETHING</Issuer>
</samlp:AuthnRequest>
Bearbeiten 001
Nach der Bearbeitung der Behauptung zu sein, als Dushyant vorgeschlagen, es wird:
<samlp:AuthnRequest xmlns="urn:oasis:names:tc:SAML:2.0:assertion"
ID="_efcebb45-5ee6-42df-ace4-a343f28f5a46"
Version="2.0" IssueInstant="2014-08-07T06:29:09Z"
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">SOMETHING</Issuer>
</samlp:AuthnRequest>
Aber immer noch der gleiche Fehler zeigt!
Außerdem finden Sie die test-Projekt bin ich mit hier. Nur ersetzen Sie die Werte in den AppSettings in der webconfig für Ihre SAML-Einstellungen.
- Ich habe das problem gefunden. Bitte siehe meine überarbeitete Antwort.
- Meh! Tote links. Auf StackOverflow ist es am besten, um alles inline.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
statt xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
Glaube ich dir gefolgt, was haben wir hier dokumentieren: http://msdn.microsoft.com/en-us/library/azure/dn195589.aspx. Wenn dem so ist, dann haben Sie einen Fehler in diesem Artikel - das tut uns Leid.
Hoffe, das hilft.
Homam, die ich überprüft Ihren code. Das problem war mit der Art und Weise der AuthnRequest war, das kodiert wird. Ich habe es auf standard-deflate-encoding-und es funktionierte.
Müssen Sie UrlEncode (z.B. HttpUtility.UrlEncode(Ergebnis)) das "Ergebnis" vor der Verwendung in einer Get-Anforderung.
Ich glaube, es ist ein falscher namespaces hier...Die SAMLRequest sollte wie folgt Aussehen.
Den Emittenten element muss in dem Namensraum 'urn:oasis:names:tc:SAML:2.0:assertion' und der AuthnRequest-element im Namensraum 'urn:oasis:names:tc:SAML:2.0:protocol'
Natürlich muss dieser abgelassen werden + base64-kodiert ist. Wenn Sie mit HttpRedirect Bindung dann auch urlencode diese vor der Einbettung in die URL