2017-09-09 3 views
1

J'essaie d'intégrer mon service SAML 2.0 dans Azure B2C. Nous avons réussi à nous connecter, mais nous n'avons pas réussi à nous déconnecter complètement pour fonctionner correctement.Quel est le format de SamlResponse dans l'URL de déconnexion Azure B2C SAML 2.0

Nous l'avons réduit à notre service ne traitant pas la réponse de déconnexion correctement, en particulier l'URL que les appels B2C n'est pas formatée de la manière que nous attendons. Pour d'autres fournisseurs d'identité que nous avons intégré (OKTA, ADFS 2.0) l'URL qu'ils appellent le succès logout ressemble à quelque chose comme:

https://my-service.com/logout?SAMLResponse=<samlResponse>&RelayState=<relayState> 

où SAMLResponse est une réponse XML SAML logout codé en base64 que nous traitons ensuite, vérifier etc

Azure B2C fait un appel qui ressemble à:

https://my-service.com/logout?SAMLResponse=<samlResponse>&SigAlg=http://www.w3.org/2000/09/xmldsig#rsa-sha1&Signature=<signature> 

où SAMLResponse est pas immédiatement une chaîne codée base64 que l'on peut décoder dans la réponse de déconnexion SAML XML, ce qui provoque des problèmes avec la vérification de notre service proc ess. Ma question est de savoir quel type de chaîne est samlResponse et que dois-je faire pour pouvoir examiner la réponse à la déconnexion SAML XML.

Je suis absolument pas un expert sur SAML 2.0, donc je suis désolé si cette question est super évident :)

Répondre

0

Ok, donc il se ce moi était tout simplement pas savoir assez bien SAML et rien à faire avec le comportement Azure B2C. B2C utilise la liaison "Redirect" pour la déconnexion, pas un POST. Pour une liaison de redirection, la réponse est envoyée un peu différemment. Il est gzippé ainsi que codé en base64 + encodé en url.

Ceci a été le message qui m'a aidé à le comprendre https://stackoverflow.com/a/41469795/1699348