7.9. 配置 OpenID Connect 身份提供程序
配置 oidc
身份提供程序,使用授权代码流与 OpenID Connect 身份提供程序集成。
您可以将 Red Hat Single Sign-On 配置为 OpenShift Container Platform 的 OpenID Connect 身份提供程序。
OpenShift Container Platform 中的 Authentication Operator 要求配置的 OpenID Connect 身份提供程序实现 OpenID Connect Discovery 规格。
不支持 ID Token
和 UserInfo
解密。
默认情况下,需要 openid
范围。如果必要,可在 extraScopes
字段中指定额外的范围。
声明可读取自从 OpenID 身份提供程序返回的 JWT id_token
;若有指定,也可读取自从 UserInfo
URL 返回的 JSON。
必须至少配置一个声明,以用作用户的身份。标准的身份声明是 sub
。
您还可以指定将哪些声明用作用户的首选用户名、显示名称和电子邮件地址。如果指定了多个声明,则使用第一个带有非空值的声明。标准的声明是:
声明 | 描述 |
---|---|
| “subject identifier”的缩写。 用户在签发者处的远程身份。 |
|
置备用户时的首选用户名。用户希望使用的简写名称,如 |
| 电子邮件地址。 |
| 显示名称。 |
如需更多信息,请参阅 OpenID 声明文档。
使用 OpenID Connect 身份提供程序要求用户使用 <master>/oauth/token/request
来获取令牌,以便用于命令行工具。
7.9.1. 关于 OpenShift Container Platform 中的身份提供程序
默认情况下,集群中只有 kubeadmin
用户。要指定身份提供程序,您必须创建一个自定义资源(CR) 来描述该身份提供程序并把它添加到集群中。
OpenShift Container Platform 用户名不能包括 /
、:
和 %
。