使用 SCIM 管理用户和团队
注意
可在 Grafana Enterprise 和 Grafana Cloud Advanced 中使用。
SCIM 通过自动化用户生命周期和团队成员管理操作来简化 Grafana 中的身份管理。本指南解释了 SCIM 如何与现有的 Grafana 设置协同工作、处理用户预置以及管理团队同步。
使用 SCIM,您可以
- 自动化用户生命周期,从创建到停用
- 通过将现有用户与身份提供商身份关联来管理现有用户
- 通过在添加组时自动创建团队、更新团队成员资格并在移除组时删除团队来自动化团队生命周期
- 通过自动化取消预置来维护安全性
- 使用更强大的 SCIM 组同步功能替换团队同步
使用 SCIM 进行用户预置
SCIM 预置与 Grafana 中现有的用户管理方法协同工作。虽然 SCIM 自动化了来自身份提供商的用户预置,但用户仍可以在登录时通过 SAML 即时预置创建,通过 Grafana UI 手动创建,或通过 Terraform 和 Grafana API 等自动化工具创建。为了获得最一致的用户管理体验,我们建议通过 SCIM 集中化用户预置。
注意
用户预置需要在 SCIM 配置中设置
user_sync_enabled = true
。更多信息请参阅配置 Grafana 中的 SCIM。
警告
通过 SCIM 预置的用户不能从 Grafana 中删除,只能通过身份提供商停用。在规划用户管理策略时,尤其考虑到合规性和数据保留要求,这一点很重要。
有关特定于身份提供商的详细配置步骤,请参阅
SCIM 如何识别用户
SCIM 使用特定过程在身份提供商和 Grafana 之间建立和维护用户身份
初始用户查找
- 身份提供商使用用户的登录名和唯一标识符字段(可在 IdP 配置)在 Grafana 中查找用户
- 身份提供商期望 Grafana 为每个用户返回单个结果
身份链接
- 身份提供商了解找到的 Grafana 用户与 Grafana 内部 ID 之间的关系
- 身份提供商使用外部 ID 更新 Grafana
- Grafana 更新身份验证验证以期望此外部 ID
身份验证验证
- Grafana 期望 SAML 集成在 SAML 断言中返回相同的外部 ID
- 此外部 ID 用于验证登录用户是否与已预置的用户匹配
此过程确保了两个系统之间安全一致的用户识别,防止了因电子邮件更改或其他用户属性修改而可能出现安全问题。
现有 Grafana 用户
注意
启用 SCIM 后,现有用户必须在身份提供商中分配到 Grafana 应用程序才能保持访问权限。
对于 Grafana 实例中已存在的用户
- SCIM 通过外部 ID 匹配过程建立关联
- 与身份提供商身份建立安全链接
- 保留所有现有设置和访问权限
- 在身份提供商中分配之前,保持账户活动且不变
处理来自其他预置方法的用户
为防止冲突并保持用户管理的一致性,在实施 SCIM 时,禁用或限制其他预置方法。这确保所有新用户都通过 SCIM 创建,并防止出现重复或冲突的用户记录。
SAML 即时 (JIT) 预置
- 在 SAML 设置中禁用
allow_sign_up
以防止自动创建用户 - 现有的 JIT 预置用户将继续工作,但应迁移到 SCIM
- 在 SAML 设置中禁用
Terraform 或 API 预置
- 停止通过这些方法创建新用户
- 现有用户将继续工作,但应迁移到 SCIM
- 考虑移除或归档 Terraform 用户创建资源
手动用户创建
- 仅将基于 UI 的用户创建限制给管理员
- 计划将手动创建的用户迁移到 SCIM
新用户
对于在 Grafana 中尚不存在的用户
- 当用户在身份提供商中分配给 Grafana 时,SCIM 会创建账户
- 根据身份提供商组的成员身份和 SAML 角色映射设置初始访问权限
- 无需手动创建 Grafana 账户
角色管理
SCIM 处理用户同步,但不处理角色分配。角色管理通过角色同步处理,任何角色更改在用户身份验证期间生效。
使用 SCIM 进行团队预置
SCIM 提供了超出团队同步功能的自动化团队管理能力。团队同步仅将身份提供商组映射到现有的 Grafana 团队,而 SCIM 可以根据身份提供商中的组更改自动创建和删除团队。
注意
团队预置需要在 SCIM 配置中设置
group_sync_enabled = true
。更多信息请参阅配置 Grafana 中的 SCIM。
警告
通过 SCIM 预置的团队不能从 Grafana 中手动删除 - 只能通过从身份提供商中移除其相应的组来删除。
有关特定于身份提供商的详细配置步骤,请参阅
SCIM 与团队同步
警告
请勿同时启用 SCIM 组同步和团队同步,因为这些方法可能相互冲突。但是,您可以使用 SCIM 进行用户预置,同时保留团队同步用于团队管理,直到迁移支持可用。
选择一种团队同步方法
- 如果启用 SCIM 组同步,请禁用团队同步并使用 SCIM 进行团队管理
- 如果您偏好团队同步,请勿启用 SCIM 组同步
警告
团队同步迁移:支持从团队同步迁移到 SCIM 组同步的功能即将推出。在此支持发布之前,我们建议保留现有的团队同步设置进行团队管理。您仍可以在使用团队同步进行团队管理的同时,受益于 SCIM 用户预置功能。
主要区别
SCIM 组同步相较于团队同步具有多项优势
- 自动创建团队:当新的组添加到身份提供商时,SCIM 会自动创建 Grafana 团队
- 自动删除团队:当相应的组从身份提供商中删除时,SCIM 会移除团队
- 实时更新:当组分配更改时,团队成员资格会立即更新
- 简化管理:无需在映射之前在 Grafana 中手动创建团队
团队同步如何工作
SCIM 通过以下过程管理团队
组分配
- 用户在身份提供商中被分配到组
- SCIM 检测到组成员资格更改
团队创建和映射
- 为新的身份提供商组创建 Grafana 团队
- 将用户映射到相应的团队
- 组成员资格更改时从团队中移除用户
团队成员维护
- 持续同步团队成员资格
- 从组中移除用户时,将其从团队中移除
- 组更改时更新团队成员资格