Wat is precies de RelayState-parameter die wordt gebruikt in SSO (bijv. SAML)?

Ik probeer SSO te begrijpen met SAML. Ik ben de RelayState-parameter tegengekomen en ben erg in de war, precies waarom het eerst komt in SSO om gecodeerde URL’s te verzenden? Wat betekent het precies?

Lees het volgende uit de documentatie voor Google Developers:

Google genereert een SAML-verificatieverzoek. Het SAML-verzoek is gecodeerd en ingebed in de URL voor de SSO-service van de partner. De parameter RelayState die de gecodeerde URL bevat van de Google-toepassing die de gebruiker probeert te bereiken, is ook ingesloten in de SSO-URL. Deze RelayState-parameter is bedoeld als een ondoorzichtige id die wordt teruggegeven zonder enige wijziging of inspectie


Antwoord 1, autoriteit 100%

De oorspronkelijke betekenis van RelayStateis dat de SP een waarde naar de IDP kan sturen samen met de AuthnRequesten deze vervolgens terugkrijgt. De SP kan elke gewenste waarde in de RelayStateplaatsen en de IDP zou het gewoon terug moeten echoën in het antwoord.

Deze RelayStateparameter is bedoeld als een ondoorzichtige identifier die zonder enige wijziging of inspectie wordt teruggegeven

Er is ook een ander, de facto standaard gebruik voor RelayStatebij gebruik van door Idp geïnitieerde aanmelding. In dat geval is er geen inkomend verzoek van de SP, dus er kan geen status zijn die moet worden teruggestuurd. In plaats daarvan wordt de RelayStategebruikt door de IDP om aan de SP te laten weten naar welke URL de SP moet omleidenna een succesvolle aanmelding. In de standaard (Bindingen 4.1.5) staat dat RelayState “MOG de URL van een bron bij de serviceprovider kan zijn.”

Het lijkt erop dat Google RelayStategebruikt voor de doel-URL, zelfs bij door de SP gestarte aanmelding, wat prima is. Maar de IDP zou, zoals de documentatie zegt, het gewoon terug moeten sturen.


Antwoord 2, autoriteit 8%

RelayState is een identifier voor de resource bij de SP waar de IDP de gebruiker naartoe zal omleiden (na succesvolle login). Het is een manier om het SSO-proces van voorbijgaande aard te maken voor de gebruiker, omdat ze opnieuw worden omgeleid naar dezelfde pagina die ze oorspronkelijk bij de SP hadden aangevraagd.


Antwoord 3, autoriteit 5%

Volgens officieel SAML-document,

Sommige bindingen definiëren een “RelayState”-mechanisme voor het bewaren en doorgeven van statusinformatie. Wanneer
een dergelijk mechanisme wordt gebruikt bij het overbrengen van een verzoekbericht als de eerste stap van een SAML-protocol, het is
stelt eisen aan de keuze en het gebruik van de binding die vervolgens wordt gebruikt om de respons over te brengen.
Namelijk, als een SAML-verzoekbericht vergezeld gaat van RelayState-gegevens, dan is de SAML-responder
MOET zijn SAML-protocolantwoord retourneren met behulp van een binding die ook een RelayState-mechanisme ondersteunt, en
het MOET de exacte RelayState-gegevens die het met het verzoek heeft ontvangen in de overeenkomstige RelayState plaatsen
parameter in het antwoord.


Antwoord 4

Dit onderstaande stroomschema kan u stap voor stap helpen. ACS URL en relayState zijn beide verschillend. relayState geeft je nog een info/url om af te handelen waar de gebruiker precies heen wil. meer details

saml-sso-idp-initialted-flow-relay-state

Other episodes