大咖名流
栏目导航
  1. 大咖名流
  2. 汽车资讯
  3. 健康新闻
  4. 法律在线
  5. 科技前沿
  6. 娱乐新闻
  7. 社会文化
  8. 财经资讯
  9. 教育新闻
  10. 军事新闻

大咖名流

主页 > 大咖名流 >

为什么我们需要多个 SAML IDP 签名密钥?_科技频道_东

发布日期:2020-09-06 08:18   来源:未知   阅读:

一旦你的IDP接收到身份验证请求,IDP将验证你是否已登录(可能是密码、可能是客户端证书),然后签署一个断言。断言是SP将验证并用于登录你的内容。然后,你的IDP将此断言发送回SP。SP验证密码签名,验证该断言是否应该发送到特定的SP,并提取相关的用户名和其他字段。现在,你可以看所有你想看的图片了!

那个签名秘钥听起来很吓人!你的本能可能是不惜一切代价保护该密钥。密钥值得保护,但是对你的SAMLIDP安全最大的可信威胁不是拥有你的SAML服务器的攻击者。

从较高的层次上讲,SAML是一种登录用户的方式,它使用两个系统之间的浏览器内部通信,否则它们之间不能相互通信。当用户想要登录到他们最喜欢的SaaS时,SaaS应用程序(SP或服务提供商)会将一些关于登录请求的数据发送到你的IDP。这包括诸如惟一请求ID和数据(如你试图访问的原始页面)之类的内容。理论上,身份验证请求可以指定IDP应该返回哪种类型的用户名和名称之类的字段,但实际上这会被忽略。这些请求也可以签名,但实际上在SP旋转其密钥时,大多数情况都会使事情中断。安全性几乎没有好处,因为在任何现代系统中,SAML交换都是通过TLS进行的。

这个问题并不是SAML独有的,签名的JWT和其他SSO的使用(比如OIDC中的使用)也可能遇到类似的问题,即缺少令牌验证。

SAML是如何工作的?

SAML是一种目前应用非常广泛的单点登录协议,如果你运行SAML服务器并与许多其他站点集成,那么几乎可以肯定你使用的是不安全的设置。SAML安全面临的最大威胁不是怪异的XML边缘案例或黑客窃取你的签名密钥,而是低质量的第三方实现,这允许你的用户登录到你认为他们无法访问的应用程序。要确保SAML断言只适用于正确的应用程序,请为每个应用程序或服务提供者使用惟一的签名密钥。