组映射
通过 IdP 的目录组到团队配置,用户更新将自动与您的 Docker 组织和团队同步。
提示
组映射非常适合将用户添加到多个组织或一个组织内的多个团队。如果不需要设置多组织或多团队分配,可以使用 用户级别属性。
组映射的工作原理
IdP 通过 SSO 与 Docker 共享每个授权用户的主要属性,例如电子邮件地址、姓名和组。即时 (JIT) 配置使用这些属性来创建或更新用户的 Docker 配置文件及其与 Docker Hub 上的组织和团队的关联。
Docker 使用用户的电子邮件地址在平台上识别他们。每个 Docker 帐户必须始终拥有唯一的电子邮件地址。
启用 JIT 配置的 SSO 身份验证
每次成功 SSO 登录身份验证后,JIT 配置程序都会执行以下操作:
检查是否存在包含刚刚通过身份验证的用户的电子邮件地址的现有 Docker 帐户。
a) 如果没有找到具有相同电子邮件地址的帐户,则会使用基本用户属性(电子邮件、姓名)创建一个新的 Docker 帐户。 JIT 配置程序使用电子邮件、姓名和随机数为此新帐户生成新用户名,以确保所有帐户用户名在平台中都是唯一的。
b) 如果此电子邮件地址存在帐户,则它会使用此帐户并根据需要更新用户个人资料的全名。
检查对 SSO 组织的任何待处理邀请以自动接受邀请。如果邀请特定于某个组,则在以下步骤中将用户连同组映射一起添加到受邀请的组中。
在对用户进行身份验证时检查 IdP 是否共享组映射。
a) 如果 IdP 为用户提供了组映射,则用户将被添加到组映射指示的组织和团队中。
b) 如果 IdP 未提供组映射,它会检查用户是否已经是组织的成员,或者 SSO 连接是否适用于多个组织(仅在公司级别),以及用户是否是以下任何组织的成员那些组织。如果用户不是成员,则会将该用户添加到 SSO 连接中配置的默认团队和组织。
禁用 JIT 配置的 SSO 身份验证
测试版功能
当您使用管理控制台时,私人测试版中提供可选的即时 (JIT) 配置。如果您参与此计划,您可以选择关闭此默认配置并禁用 JIT。如果您使用 SCIM 自动配置用户,则建议使用此配置。
当您选择在 SSO 连接中禁用 JIT 配置时,会发生以下操作:
检查是否存在包含刚刚通过身份验证的用户的电子邮件地址的现有 Docker 帐户。
a) 如果没有找到具有相同电子邮件地址的帐户,则会使用基本用户属性(电子邮件、姓名)创建一个新的 Docker 帐户。 SSO 身份验证会使用电子邮件、姓名和随机数为此新帐户生成新用户名,以确保所有帐户用户名在平台中都是唯一的。
b) 如果此电子邮件地址存在帐户,则它会使用此帐户并根据需要更新用户个人资料的全名。
检查是否存在对 SSO 组织(或 SSO 组织,如果 SSO 连接在公司级别进行管理)的任何待处理邀请,以便自动接受邀请。
a) 如果用户还不是组织的成员,或者没有待处理的加入邀请,则登录失败并且用户会遇到错误
Access denied
。这会阻止用户加入组织。他们需要联系管理员以邀请他们加入。b) 如果用户是组织的成员,或者有待处理的加入邀请,则登录成功。
如果您在创建或编辑 SSO 连接时禁用 JIT 配置,只要您还 启用了 SCIM ,您仍然可以使用组映射。当禁用 JIT 配置且未启用 SCIM 时,不会将用户自动配置到组。有关禁用 JIT 配置的说明,请参阅 管理用户的配置方式。
使用组映射
要将用户正确分配到 Docker 团队,您必须按照命名模式在 IdP 中创建组organization:team
。例如,如果您想要管理“开发人员”团队的配置,并且您的组织名称为“moby”,则必须在 IdP 中创建一个名为 的组moby:developers
。
在连接中启用组映射后,在 IdP 中分配给该组的用户将自动添加到 Docker 中的“开发人员”团队。
您可以使用此格式将用户添加到多个组织。例如,如果您想要将用户添加到“moby”组织中的“后端”团队以及“docker”组织中的“桌面”团队,则格式为:moby:backend
和docker:desktop
。
提示
对 Docker 团队使用与 IdP 中的组名称相同的名称,以防止进一步配置。当您同步组时,如果组尚不存在,则会创建该组。
下面列出了支持的组映射属性:
属性 | 描述 |
---|---|
ID | UUID 格式的组的唯一 ID。该属性是只读的。 |
显示名称 | 组名称遵循组映射格式:organization:team 。 |
会员 | 该组成员的用户列表。 |
成员(x).值 | 该组成员的用户的唯一 ID。成员通过 ID 引用。 |
要利用组映射,请按照 IdP 提供的说明进行操作:
完成后,通过 SSO 登录 Docker 的用户将自动添加到 IdP 中映射的组织和团队中。
提示
使 SCIM能够利用自动用户配置和取消配置。如果您不启用 SCIM 用户,则只会自动配置。您必须手动取消配置它们。
更多资源
以下视频演示了如何通过 IdP 使用组映射。