13.3.11. GitLab
在 identityProviders
小节中设置 GitLabIdentityProvider
,以使用 GitLab.com 或任何其他 GitLab 实例作为身份提供程序。如果使用 GitLab 版本 7.7.0 到 11.0,您可以使用 OAuth 集成进行连接。如果使用 GitLab 版本 11.1 或更高版本,您可以使用 OpenID Connect (OIDC) 进行连接,而不使用 OAuth。
例 13.7. 使用 GitLabIdentityProvider
的 master 配置
oauthConfig: ... identityProviders: - name: gitlab 1 challenge: true 2 login: true 3 mappingMethod: claim 4 provider: apiVersion: v1 kind: GitLabIdentityProvider legacy: 5 url: ... 6 clientID: ... 7 clientSecret: ... 8 ca: ... 9
- 1
- 此提供程序名称作为前缀放在 GitLab 数字用户 ID 前,以此组成身份名称。它还可用来构建回调 URL。
- 2
- 为
true
时,来自非 Web 客户端(如 CLI)的未经身份验证的令牌请求会为此提供程序发送WWW-Authenticate
质询标头。这将使用 Resource Owner Password Credentials 授权流从 GitLab 获取访问令牌。 - 3
- 为
true
时,来自 Web 客户端(如 Web 控制台)的未经身份验证的令牌请求将重定向到 GitLab 以进行登录。 - 4
- 控制如何在此提供程序的身份和用户对象之间建立映射,如上 所述。
- 5
- 决定是否使用 OAuth 或 OIDC 作为身份验证供应商。设置为
true
,以使用 OAuth 和false
来使用 OIDC。您必须使用 GitLab.com 或 GitLab 版本 11.1 或更高版本使用 OIDC。如果没有提供值,OAuth 用于连接 GitLab 实例,并使用 OIDC 连接到 GitLab.com。 - 6
- GitLab 提供程序的主机 URL。这可以是
https://gitlab.com/
或其他自托管 GitLab 实例。 - 7
- 注册的 GitLab OAuth 应用程序的客户端 ID 。应用程序必须配置有 <
master>/oauth2callback/<identityProviderName>
; 的回调 URL。 - 8
- GitLab 发布的客户端 secret。此值也可在 环境变量、外部文件或加密文件 中提供。
- 9
- CA 是一个可选的可信证书颁发机构捆绑包,用于在向 GitLab 实例发出请求时使用。若为空,则使用默认的系统根证书。