假设我们在tomcat上有一个名为A的服务提供商应用程序,用户点击指向SP A的链接.SP A看不到提供令牌,因此它将用户重定向到IdP进行身份验证(使用SAML Authn请求)通过某种方式提供)。然后,IdP将用户重定向到提供凭据的一些公共登录页面,假设这些凭据是正确的,IdP使用令牌和关于主题的一些断言创建SAML响应,并将其发送回SP A. SP A看到此并允许用户访问应用程序。太好了!
我有几个问题
答案 0 :(得分:1)
我花了很多时间让SSO为我工作。最有用的文件是this specification
以下答案基于以下经验:
答案 1 :(得分:1)
根据我自己的经验:
您可以选择自己的SAMLBinding(重定向或发布),具体取决于您的idp和sp支持的内容。该结合类型将用于第一步(SP→Idp)和第二步(IdP→SP)。如果您有一些运行环境,请打开浏览器devtools并查看网络选项卡以查看会发生什么。这只是一种从浏览器向SP / IdP发送数据的方法。
Office 365和Salesforce.com都是云服务,对吗?我们以Office 365为例。这意味着除了“最终用户”服务(如Word,Excel)之外,还有一些技术SSO服务,这些服务是平台所共有的。它可以被视为较低(或技术)的服务层,我认为你说的是什么。
SAML令牌由您的SP应用程序存储在浏览器中,隐藏在网页,cookie或Web存储中。这取决于您的SP的实施方式。
每个SP都可以根据共享私钥验证SAML响应,因此它将使用此密钥解密令牌,并且无需IdP重定向的帮助即可授予用户权限。