哪种SSO策略更安全SAML 2.0或OpenId Connect?

问题描述:

我想要使用单点登录,并在阅读了大量有关这两种(Saml 2.0和OIDC)标准的文章后完全混淆了使用方法。我对他们是如何工作有一个基本的想法,但不确定在安全性方面哪个最好。哪种SSO策略更安全SAML 2.0或OpenId Connect?

我的具体疑问是,openid-connect的混合流是不太安全的,因为它发送id_token和access_token与auth_code可以将这些令牌暴露给用户代理。混合流程通常用于SSO(单点登录)。

在SSO的情况下,OIDC和SAML一样强大吗?

OpenID Connect更加现代化,支持更多场景。 SAML2较老,在各种平台和云产品上具有更广泛的支持。

我会与OpenID Connect一起去寻找新的东西。

在任何情况下,我都会建议您使用现有的软件堆栈作为您使用的替代方案。编写正确的SAML2或OpenID Connect实施方案是

+0

非常赞同最后一段! –

+0

OpenID Connect不是**,它根本不会**,事实上,可以通过遵循规范几乎立即构建选定流的最小工作代码。 SAML2是一种野兽,特别是当涉及到签名/加密以及某些提供商提供的规范化/标准化的特定要求时。 –

完全同意@anders和@Hans - 不要推出自己的。

我不认为一个人比另一个人不安全。

OIDC/OAuth有四个主要流程,有些比其他更安全 - 资源所有者密码可能是最不安全的。

Facebook/Google/Twitter等都使用OIDC。

Saleforce/Workday等都使用SAML。

如果协议不安全,他们不会这样做。

可能更好的问题是哪一个最适合您的使用情况。