OpenID Connect 用于与身份提供商集成
OpenID Connect (OIDC) 用于 Qlik Cloud 与身份提供商集成。OIDC 是 OAuth 2.0 协议之上的一个精简标识层。OAuth 2.0 是授权的标准协议和 OIDC 用户身份验证的标准协议。这两个协议使您能够安全地访问多个应用程序和网站,而无需通过 单点登录 (SSO) 多次登录。
OAuth 2.0 仅为授权设计。通过向请求客户机提供密钥,可以授予从一个应用程序到另一个应用程序对数据和特性的访问权限。通过使用密钥,您将不必公开您的凭据。相反,您可以在自己已经是注册用户的应用程序中重用凭据,例如电子邮件提供商。密钥确保您只共享已同意共享的信息。您还可以随时撤消密钥。
密钥很有用,且不提供任何有关您作为用户的信息。OIDC 添加有关使用 ID 令牌登录的用户的登录和配置文件信息的功能。OIDC 允许不同的客户端(基于 Web、移动、Javascript 和其他客户端)根据授权服务器执行的身份验证来验证用户的身份。客户端还可以请求有关用户的基本配置文件信息。
有关 OAuth 和 OpenID Connect 的简介,请观看以下视频:An Illustrated Guide to OAuth and OpenID Connect.
ID 令牌
OpenID Connect 使用 ID 令牌简化集成并支持多种应用程序。
ID 令牌是一个特定格式的字符串,称为 JSON Web 令牌 或 JWT。JWT 是通用的,支持一系列签名和加密算法。客户端可以提取 JWT 中嵌入的信息,例如 ID、名称、您登录的时间、ID 令牌过期时间以及是否有人试图篡改 JWT。ID 令牌中的数据片段称为声明。
如前所述,客户机使用 OAuth 2.0 流来获取 ID 令牌,这可以同时用于 Web 应用程序和本地移动应用程序。
访问令牌
除了 ID 令牌之外,还有访问令牌:应用程序可以用来访问 API 的凭据。访问令牌可以是 JWT 令牌,也可以是非 JWT 令牌。令牌用于通知 API 此令牌的持有者已被授予访问 API 的权限。
声明
JWT 令牌包含声明,声明是关于实体(通常是用户)的语句(如名称或电子邮件地址)和其他元数据。
OIDC 规范定义了一组标准声明。标准声明组包括姓名、电子邮件、性别、生日等。如果要收集标准声明中未包含的用户的信息,可以创建自定义声明并将其添加到令牌中。
OpenID Connect 规范
OpenID Connect 1.0 规范包括以下文档:Qlik 支持此规范,而不是所有特定的自定义供应商规范实施。Qlik 可选择为我们的客户添加便利的配置,以使用主流身份管理产品和平台。
- Core:定义核心 OpenID Connect 功能:建立在 OAuth 2.0 基础之上的身份验证,以及使用声明来传递有关用户的信息
- Discovery(可选):定义客户端如何动态发现有关 OpenID 提供商的信息
- Dynamic Registration(可选):定义客户端如何向 OpenID 提供商动态注册
- OAuth 2.0 多个响应类型:定义数个特定的新 OAuth 2.0 响应类型
- OAuth 2.0 Form Post Response Mode(可选):定义如何使用由用户代理使用 HTTP POST 自动提交的 HTML 表单值返回 OAuth 2.0 授权响应参数(包括 OpenID Connect 身份验证响应参数)
- Session Management(可选):定义如何管理 OpenID Connect 会话,包括基于 postMessage 的注销和 RP 发起的注销功能
- Front-Channel Logout(可选):定义不在 RP 页面上使用 OP iframe 的前通道注销机制
- Back-Channel Logout(可选):定义注销机制,该机制使用正在注销的 OP 和 RP 之间的直接反向通道通信
- OpenID Connect Federation(可选):定义 OPs 和 RP 集如何通过使用联合运营商建立信任
要访问文档,请转到欢迎使用 OpenID Connect。