This documentation is for a release that is no longer maintained
See documentation for the latest supported version.2.8. 安装和配置 Keycloak
将 Keycloak 后端插件集成到 Developer Hub 中,具有以下功能:
- 同步域中的 Keycloak 用户。
- 在域中同步 Keycloak 组及其用户。
2.8.1. 对于管理员 复制链接链接已复制到粘贴板!
2.8.1.1. 安装 复制链接链接已复制到粘贴板!
Keycloak 插件在 Developer Hub 中预加载,带有基本配置属性。要启用它,将 disabled
属性设置为 false
,如下所示:
2.8.1.2. 基本配置 复制链接链接已复制到粘贴板!
要启用 Keycloak 插件,您必须设置以下环境变量:
-
KEYCLOAK_BASE_URL
-
KEYCLOAK_LOGIN_REALM
-
KEYCLOAK_REALM
-
KEYCLOAK_CLIENT_ID
-
KEYCLOAK_CLIENT_SECRET
2.8.1.3. 高级配置 复制链接链接已复制到粘贴板!
调度配置
您可以在 app-config.yaml
文件中配置调度,如下所示:
如果您在 app-config.yaml
文件中对调度进行了任何更改,则重启以应用更改。
Keycloak 查询参数
您可以覆盖 app-config.yaml
文件中的默认 Keycloak 查询参数,如下所示:
使用 Keycloak API 启用 Developer Hub 和 Keycloak 之间的通信。用户名和密码或客户端凭证是支持的身份验证方法。
下表描述了您可以配置在 app-config.yaml
文件中的 catalog.providers.keycloakOrg.<ENVIRONMENT_NAME
> 对象下启用插件的参数:
Name | 描述 | 默认值 | 必填 |
---|---|---|---|
|
Keycloak 服务器的位置,如 | "" | 是 |
| 要同步的域 |
| 否 |
| 用于验证的域 |
| 否 |
| 进行身份验证的用户名 | "" | 如果使用基于密码的身份验证,则为 |
| 进行身份验证的密码 | "" | 如果使用基于密码的身份验证,则为 |
| 要进行身份验证的客户端 ID | "" | 如果使用基于客户端凭证的身份验证,则为 yes |
| 要进行身份验证的客户端 Secret | "" | 如果使用基于客户端凭证的身份验证,则为 yes |
| 一次查询的用户数 |
| 否 |
| 一次查询的组数 |
| 否 |
在使用客户端凭据时,必须将访问类型设为 机密
,并且必须启用服务帐户。您还必须从 realm-management
客户端角色中添加以下角色:
-
query-groups
-
query-users
-
view-users
2.8.1.4. 限制 复制链接链接已复制到粘贴板!
如果您有自签名或企业证书问题,您可以在启动 Developer Hub 前设置以下环境变量:
NODE_TLS_REJECT_UNAUTHORIZED=0
不建议设置环境变量的解决方案。
2.8.2. 对于用户 复制链接链接已复制到粘贴板!
2.8.2.1. 使用 Keycloak 插件在 Developer Hub 中导入用户和组 复制链接链接已复制到粘贴板!
成功配置插件后,插件会在每次启动时都会导入用户和组。
如果您设置了调度,则用户和组也会被导入。
第一次导入完成后,您可以从目录页面中选择 User 来列出用户:
您可以在页面中查看用户列表:
当您选择一个用户时,您可以看到从 Keycloak 导入的信息:
您还可以选择一个组,查看列表,并为组选择或查看从 Keycloak 导入的信息: