开始之前
- 在您的 ClickHouse Cloud 组织中拥有 Admin 角色。
- 已在 Entra ID 与 ClickHouse Cloud 之间配置 SAML 单点登录。SCIM 会创建用户账户;这些账户通过 SAML 登录,因此必须先确保 SSO 正常运行。
- 有权访问 Microsoft Entra 管理中心,且至少拥有 Application Administrator (或 Cloud Application Administrator) 角色,并具有为企业应用程序配置预配的权限。
- 要通过 SCIM 分配的角色列表 (例如:Admins、Developers、只读) 。请提前确定此列表,因为您需要在 Entra ID 中创建对应的组。
SCIM 如何与 ClickHouse Cloud 配合使用
- Entra ID 中的管理员可直接或通过群组将用户分配给 ClickHouse Cloud 企业应用程序。
- Entra ID 的预配服务通过 HTTPS 调用 ClickHouse Cloud SCIM 端点,并使用您生成的 Bearer 令牌进行身份验证。
- ClickHouse Cloud 会在您的组织中创建用户,并根据其 Entra ID 群组成员身份分配角色。
- 用户通过您现有的 SAML 单点登录流程登录 ClickHouse Cloud。
- Entra ID 中的 profile、群组变更和停用会自动同步到 ClickHouse Cloud。
在 ClickHouse Cloud 组织中配置 SCIM
1
启用 SCIM
以组织管理员身份登录 ClickHouse Cloud 控制台,然后依次打开 组织设置 → SAML 和 SCIM 设置 → SCIM 配置。点击 复制该 URL,稍后需将其作为 租户 URL 粘贴到 Entra ID 中。
Enable SCIM。连接 SAML 单点登录后即可启用 SCIM;如果该选项显示为灰色,请先完成 SAML 设置。系统会生成一个 SCIM endpoint URL,格式如下:2
生成 SCIM 访问令牌
找到 具体来说,令牌密钥 (以
Generate new key 部分并选择过期日期。点击 Generate new key。令牌仅显示一次,由密钥 (以 scim_ 为前缀) 和机密值组成。请立即复制两者并存储在安全的密钥管理器中,之后将无法再次获取。如果遗失,请撤销该令牌并生成新令牌。您需要将密钥和机密值合并为单个 Bearer 令牌,供 Entra ID 使用,格式如下:scim_ 开头) 后接一个冒号,再接令牌机密值,中间不留空格。Entra ID 会在每个请求中通过 Authorization: Bearer 请求头发送此值。3
定义角色映射
在 SCIM 配置面板中,点击 Map roles in “用户和角色” (或直接依次进入 用户和角色 → Roles) 。SCIM 组会按名称绑定到 ClickHouse Cloud 角色,请注意以下规则:
- 无法将 SCIM 组映射到预定义的系统角色。 SCIM 映射仅适用于自定义角色。如果需要通过 SCIM 提供系统级能力,请创建一个包含所需权限的自定义角色。
- 同名会自动关联。 如果自定义角色与传入的 SCIM 组同名,ClickHouse Cloud 会自动将两者关联,无需手动映射。
- 若要使用与组名不同的角色名称,请使用所需角色名称创建自定义角色,然后将其 SCIM group 字段设置为要绑定的 SCIM 组名称。
- 未映射的组会创建新角色。 如果 Entra ID 推送的组既不匹配现有角色名称,也未被任何角色的
SCIM group字段引用,ClickHouse Cloud 会使用该组名称创建新的自定义角色。之后您可以为其授予所需权限。
在 Microsoft Entra ID 中配置预配
1
打开您的 ClickHouse Cloud Enterprise 应用
打开 Microsoft Entra ID 的概述页,然后在左侧菜单的 Manage 下选择 Enterprise applications。打开你在为 ClickHouse Cloud 配置 SAML 单点登录时创建的应用程序。如果尚未创建企业应用程序,请先按照 SAML 单点登录设置指南 进行操作 — 使用基于 SAML 的单点登录时,单点登录和 SCIM provisioning 共用同一个企业应用程序。
2
设置预配模式和凭据
在应用的左侧边栏中,选择 Provisioning,然后点击
Get started (或选择 Provisioning → Edit provisioning) 。将 Provisioning Mode 设置为 Automatic。在 Admin Credentials 下填写:- Tenant URL — ClickHouse Cloud 控制台中的 SCIM 端点 URL (即
.../scimURL) 。 - Secret Token — 用冒号连接的 SCIM 凭据,格式为
<scim-key>:<scim-secret>。Entra ID 会将其作为Authorization: Bearer请求头发送。
Test Connection。Entra ID 会向 SCIM 端点发起测试请求;成功后应会显示通知。如果失败,请参阅故障排查。点击 Save。3
配置属性映射
保存凭据后,展开 映射 部分。Entra ID 会显示两组映射:
- 预配 Microsoft Entra ID 用户
- 预配 Microsoft Entra ID 组
userName 映射为 userPrincipalName。关键是,userName 必须取自包含与用户通过 SAML 单点登录时所用邮箱地址相同的属性,而非某个特定的属性名称。在某些租户中,userPrincipalName 已是该邮箱地址,无需更改;在其他租户中,邮箱地址存储在 mail 中,因此需编辑映射,使 userName 取自 mail。要更改来源,请点击 userName 行,将 源属性 设置为正确的属性,然后保存。设置 匹配优先级,使 userName 成为主要匹配属性。你可以删除不受支持的映射;SCIM 标准集之外的任何内容都会被 ClickHouse Cloud 忽略。以下其余行默认已完成映射,请再次确认各项是否正确:打开 预配 Microsoft Entra ID 组,确认
displayName 映射到 displayName,members 映射到 members——组显示名称用于关联你的 ClickHouse Cloud 角色。4
设置预配范围
展开 设置 部分:
- 将 范围 设置为
仅同步已分配的用户和组。这样会将预配范围限定为你在下一步中明确分配给该应用的用户和组。 - 暂时保持 预配状态 为
关闭— 在分配测试用户后再将其开启。
保存。5
分配组和用户
角色会在此处自动分配。在 Entra ID 中创建组。 针对之前设置的每个角色映射,创建或找到一个显示名称完全相同的 Entra ID 组。例如,如果映射为 分配用户。 有两种方式:
ClickHouse-Admins → Admin,请在 Entra ID 中创建名为 ClickHouse-Admins 的组。将组分配给应用程序。 在企业应用程序中,依次前往 用户和组 → 添加用户/组,选择角色组并进行分配。对每个角色组重复此操作。由于应用程序的预配范围设为已分配的用户和组,因此只有这些组 (及其成员) 会被预配。预配组需要相应的 Entra ID 许可证预配组 (而不仅是其成员) 需要 Microsoft Entra ID P1 或更高版本。启用组预配后,组本身会在 ClickHouse Cloud 中创建,并按显示名称绑定到对应的角色。
- 通过组 (推荐) 。 将用户添加到已分配给应用程序的 Entra ID 组中。系统会将其预配到 ClickHouse Cloud,并自动分配对应的角色。
- 直接分配。 在 用户和组 中将单个用户分配给应用程序。除非其同时属于已分配的组,否则系统会为其预配默认角色。
6
启用预配
返回 Provisioning,将 Provisioning Status 设为
On,然后点击 Save。Entra ID 会定期执行预配 (约每 40 分钟一次) 。如需立即预配特定用户 (便于测试) ,请依次选择 Provisioning → Provision on demand,搜索该用户,然后执行一次预配操作。测试集成
如果任何步骤失败,请先解决根本问题再继续——否则问题症状通常会相互叠加。
生产环境最佳实践
定期轮换令牌
使用组,而非直接分配
查看审计日志
设置合理的默认角色
避免同时使用 SCIM 和手动邀请
考虑预配周期
故障排查
Entra ID 中“测试连接”失败
Entra ID 中“测试连接”失败
- 确认已在 ClickHouse Cloud 控制台中启用 SCIM。
- 确认 Entra ID 中的租户 URL与 Cloud 控制台中显示的 SCIM 端点 URL 完全一致——组织 ID 必须正确。
- 确认Secret Token的格式为
<scim-key>:<scim-secret>——即以scim_开头的密钥、一个冒号和机密值。不得包含首尾空白字符,也不得添加Bearer前缀 (Entra ID 会自动添加) 。 - 如果您已轮换令牌,请确保使用的是新密钥和机密值,而非之前的那一对。
用户已创建,但没有权限
用户已创建,但没有权限
- 检查是否已在**“用户和角色”中的映射角色**下,为预期角色添加映射行。
- 检查 Entra ID 组名是否与映射中的 SCIM 组名完全一致,包括大小写和连字符。
- 如果您的设计有意在不将某些用户分配到组的情况下预配他们,请确认已设置默认角色。
用户或组完全未预配
用户或组完全未预配
- 确认预配状态为
On。 - 确认范围设置为
仅同步已分配的用户和组,且用户/组确实已在用户和组下分配给该应用程序。 - 请注意,预配周期大约每 40 分钟运行一次——可使用按需预配立即测试单个用户。
- 预配组本身 (而非仅预配其成员) 需要 Microsoft Entra ID P1 或更高版本。
成员列表中出现重复用户
成员列表中出现重复用户
通常是由于 Entra ID 与之前手动邀请中的电子邮件地址大小写不一致所致。从成员列表中移除重复用户,然后在 Entra ID 中取消分配并重新分配该用户 (或再次运行按需预配) ,以重新预配该用户。
因名称不匹配导致组预配失败
因名称不匹配导致组预配失败
Entra ID 中的组显示名称与 ClickHouse Cloud 中配置的映射不匹配。请重命名 Entra ID 组,或通过 SCIM 配置面板 (或用户和角色 → 角色) 在**“用户和角色”中的映射角色**下添加映射。
已停用的用户仍显示为成员
已停用的用户仍显示为成员
停用操作会在下一个预配周期生效。如需立即执行,请对此用户使用按需预配。如果之后该用户仍显示为成员,请检查预配 → 查看预配日志,确认禁用操作是否报错。
我轮换了 SCIM 令牌,现在 Entra ID 出现故障
我轮换了 SCIM 令牌,现在 Entra ID 出现故障
检查是否已在 Entra ID 中正确的企业应用程序上更新Secret Token,其格式应为
<scim-key>:<scim-secret>。更新后,单击 Test Connection 进行确认。预配恢复正常后,请在 ClickHouse Cloud 控制台中撤销旧令牌。我丢失了 SCIM 令牌
我丢失了 SCIM 令牌
令牌无法恢复。在 ClickHouse Cloud 控制台的组织设置 → SAML 和 SCIM 设置 → SCIM 配置中,撤销丢失的令牌并生成新令牌,然后在 Entra ID 中更新Secret Token。
常见问题
使用 SCIM 前是否需要先配置 SAML 单点登录?
使用 SCIM 前是否需要先配置 SAML 单点登录?
需要。SCIM 用于创建用户账户,而 ClickHouse Cloud 则通过 SAML 对这些账户进行身份验证。请先配置 SAML 单点登录。
可以将同一个企业应用程序同时用于 SAML 和 SCIM 吗?
可以将同一个企业应用程序同时用于 SAML 和 SCIM 吗?
可以。使用基于 SAML 的单点登录时,一个 Entra ID 企业应用程序即可同时处理单点登录和 SCIM 预配。
为什么 Secret Token 的格式为 key:机密值?
为什么 Secret Token 的格式为 key:机密值?
Entra ID 会通过发送
Authorization: Bearer 请求头进行身份验证,其中包含 Secret Token。ClickHouse Cloud 的 SCIM 端点要求 bearer 值为以冒号分隔的标记密钥和机密值。Entra ID 中的更改多久会同步到 ClickHouse Cloud?
Entra ID 中的更改多久会同步到 ClickHouse Cloud?
Entra ID 大约每 40 分钟执行一次预配。如需立即更新,请对特定用户使用 按需预配。
遇到问题时,如何获取帮助?
遇到问题时,如何获取帮助?
请在 ClickHouse Cloud 控制台中通过 帮助 → 联系支持 提交支持工单,并附上:
- 您的组织 ID;
- 您的 Entra ID 企业应用程序名称 (及对象 ID) ;以及
- 预配 → 查看预配日志中失败条目的截图。