single-sign-on - 等效的 OpenID Connect 和 SAML 参与者/角色是什么?

标签 single-sign-on saml openid-connect

我无法理解 OpenID Connect 参与者/角色。我刚开始使用 SAML。在我熟悉的场景中,服务提供商是一个具有 protected 资源的 Web 应用程序,而身份提供商服务器是用户进行身份验证的地方。对于 SAML,典型的客户端是 Web 浏览器,尽管 SAML 还具有可以使用非浏览器客户端(例如 native 应用程序)的 ECP 配置文件。我了解所有这些部分是如何工作的以及它们的各种流程。

我正在尝试将同样的理解应用于 OpenID Connect。我的理解是 OpenID Provider 与 Identity Provider 相同。但其他作品呢?服务提供商是依赖方吗?那什么是客户呢? OpenID Connect 文档将“依赖方”替换为“客户端”,这让我感到困惑。

对我来说,来自 SAML 的客户端要么是 Web 浏览器,要么是 native 或移动应用程序(对于 ECP)。那么这种客户端在 OpenID Connect 世界中扮演什么角色?

由于 OpenID Connect 是基于 OAuth 构建的,因此我已经熟悉了它,但这并没有消除 SAML 到 OpenID Connect 的混淆。任何帮助将不胜感激。谢谢!

最佳答案

术语“客户端”是从 OAuth 2.0 继承的通用名称,用于请求、接收和使用 token 的实体。 OpenID Connect 建立在其之上,但由于现在有身份 token 在起作用,因此客户端也称为依赖方。

依赖方(或客户端)实际上与 SAML 服务提供商和 ECP 相同,是依赖 IDP 向其提供用户身份的实体。

依赖方(或客户端)可以是 Web 应用程序、 native 应用程序或移动应用程序中的任何一个。

关于single-sign-on - 等效的 OpenID Connect 和 SAML 参与者/角色是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30066490/

相关文章:

python - Angular.js 中基于 OpenID 连接的身份验证与 (drf oidc) Django 休息框架后端

jwt - .net core web api jwtbearer 中间件如何使用身份验证提供程序验证 OpenID Connect token

asp.net - 在我们自己的 asp.net 应用程序中集成 Azure Active Directory SSO

php - 我需要了解有关 XML 签名的哪些信息才能使 SAML 正常工作?

c# - 如何验证 ADFS SAML token

asp.net-core - 如何动态设置 OpenIdConnect 中间件选项的权限?

asp.net-mvc - 使用 Thinktecture IdentityServer 的联合安全性

azure - 如何修复 "ERROR: Invalid id_token. OpenSSL unable to verify data"

c# - ADFS SSO SAML Windows 集成身份验证不起作用

java.lang.ClassNotFoundException : org. opensaml.DefaultBootstrap