我正在尝试使用SAML了解SSO。我遇到了RelayState参数,我很困惑为什么它首先在SSO中发送编码的URL?究竟是什么意思?
请阅读the Google Developer documentation:
中的以下内容Google会生成SAML身份验证请求。 SAML请求已编码并嵌入到合作伙伴的SSO服务的URL中。包含用户尝试访问的Google应用程序的编码URL的RelayState参数也嵌入在SSO URL中。此RelayState参数是一个不透明的标识符,无需任何修改或检查即可传回
答案 0 :(得分:7)
RelayState是SP的资源标识符,IDP将用户重定向到该资源(成功登录后)。这是一种使SSO过程对用户更加短暂的方法,因为它们会再次重定向到他们最初在SP请求的同一页面。
答案 1 :(得分:3)
根据SAML官方文件,
一些绑定定义了一个" RelayState"保存和传递国家信息的机制。什么时候 这种机制用于传送请求消息作为SAML协议的初始步骤,它 对随后用于传达响应的绑定的选择和使用提出了要求。 即,如果SAML请求消息伴随有RelayState数据,则SAML响应者 必须使用也支持RelayState机制的绑定返回其SAML协议响应,以及 它必须将随请求接收的确切RelayState数据放入相应的RelayState中 响应中的参数。
答案 2 :(得分:0)
下面的流程图可以逐步帮助您。 ACS URL 和relayState 都不同。 relayState 为您提供更多信息/url 来处理用户想要去的确切位置。 more details