我试图了解使用SAML的SSO。我遇到了RelayState参数,并且非常困惑为什么它在SSO中首先出现来发送编码的URL?这到底是什么意思?
请从the Google Developer documentation阅读以下内容:
最佳答案
RelayState
的原始含义是SP可以将一些值与AuthnRequest
一起发送给IDP,然后将其取回。 SP可以将所需的任何值放入RelayState
中,而IDP只需在响应中将其回显即可。
使用Idp发起的登录时,RelayState
还有另一种事实上的标准用法。在这种情况下,没有来自SP的传入请求,因此将没有任何状态可以中继回来。相反,IDP使用RelayState
向SP 发出信号,以指示成功登录后SP应重定向到的URL。在标准(绑定(bind)4.1.5)中,声明了RelayState“MAY是服务提供商处资源的URL”。
看起来Google甚至在SP发起的登录中都将RelayState
用作目标URL,这非常好。但是IDP应该如文档所述将其中继回去。