2017-04-17 5 views
1

Nous avons une intégration SAML avec un fournisseur. Idp de notre côté est ADFS 2.0. Chaque fois que l'utilisateur clique sur un lien vers un fournisseur de notre site, l'utilisateur sera redirigé vers la page de connexion adfs. Après une authentification réussie, ils seront redirigés vers l'URL du client d'assertion saml du fournisseur, qui est leur page d'accueil.SAML SSO - lien profond - Assertion URL

Maintenant, nous avons un lien profond à établir. Le problème avec cela est l'utilisateur après l'authentification finit toujours sur la page d'accueil du fournisseur. En supposant que relaystate est configuré, n'est-il pas de la responsabilité du fournisseur de rediriger la page de l'URL de l'asserti de l'assertion de saml vers le lien profond? Je suppose que les adfs ne peuvent pas rediriger directement vers un lien profond car le contexte de sécurité doit être établi sur le site du fournisseur en allant à l'URL d'assertion. N'est-ce pas un inconvénient de s'attendre à ce que tout le monde se rende à une page spécifique (assertion url) avant d'aller à un autre lien?

Seule l'autre option que je suppose est de faire le code qui établit le contexte de sécurité du côté du fournisseur en tant que module ou filtre http. Ai-je raison de dire ceci ou ma compréhension est fausse?

Répondre

1

Dans le cadre de SAML, il incombe à ADFS d'attacher le même état de relais envoyé par le fournisseur sur la redirection revenant au fournisseur. L'utilisation de l'état du relais est hors de portée de SAML et vous devez vous mettre d'accord.

Il est cependant très fréquent que l'URL cible du lien profond soit envoyée dans le relais.

+0

Le RelayState est-il garanti pour atteindre le fournisseur dans un état non modifié dans cette situation? – anpatel

+1

Selon la spécification, ce qui est envoyé dans l'état du relais doit être renvoyé sans être modifié. Tant que l'IDP suit les spécifications, il devrait être bien –