多个业务用户的 RBAC 配置示例

许多 Azure Sphere 客户希望配置 RBAC 访问权限,使工程团队能够在工程拥有的设备和设备组上执行开发相关功能,但阻止工程团队直接访问通常由运营团队管理的生产设备组。 以下方案详细介绍了如何配置一组 RBAC 用户组和权限,以便工程团队和运营团队仅访问所需的功能和资源。 许多 Azure Sphere 客户设计自己的 Azure Sphere 设备并在现场管理它们,但通常会与合同制造商合作来生成它们。 此业务模型通常产生四个不同的 Azure Sphere 用户配置文件:

  • Azure Sphere 产品负责人用户 – 最高权限的 Azure Sphere 用户组,适用于需要创建、配置和管理新 Azure Sphere 目录及其子资源的用户,包括将设备申请到目录(仅将申请的设备与该目录永久关联),以及将现有 Azure Sphere(旧版)租户集成到 Azure Sphere(集成)目录的用户。
  • 产品工程师 用户 – 对于需要特权访问目录资源本身的项目(例如图像和证书)的用户,但这些用户对于属于目录的所有设备组(例如潜在敏感的生产设备组)不应拥有权限。 此用户组特别适用于产品开发用户,这些用户下载设备功能文件,在开发、现场测试和现场测试 OS 评估设备组之间移动设备,并部署新软件,可能会在现场测试和现场测试 OS 评估设备组中收集故障转储文件,但没有权限管理生产和生产 OS 评估设备组中的生产设备。
  • 机群操作员用户 – 用于管理生产设备机群的用户,需要生产设备组的权限,他们将在该组中部署新软件和固件映像,可能启用崩溃转储文件收集,并验证操作系统零售评估版本在生产操作系统评估设备组中是否按预期运行。
    • 设备制造商 用户 - 适用于将新制造的设备注册到设备所有者的 Azure Sphere 目录中的常规自动化制造过程。 设备制造商无需浏览目录或执行任何 Azure Sphere 用户操作,除了声明和批量声明功能。

示例 RBAC 配置。

根据 Azure RBAC 最佳做法,每个用户组仅具有其业务功能所需的权限。 例如,产品工程组可以查看目录中的所有设备,但只能对面向工程的设备组(开发、现场测试和现场测试 OS)中的设备执行作。 设备制造商用户可以将设备声明到目录,但无法浏览目录资源,也不能对声明的设备执行任何进一步作。

用户组 Azure RBAC 角色 资源范围 权限已启用
Azure Sphere 产品所有者 (1a) Azure Sphere 产品所有者 资源组 • 在资源组中创建、集成、删除 Azure Sphere 目录
• 为资源组中的 Azure Sphere 资源分配 RBAC 角色
• 执行任何 Azure Sphere 用户操作
• 配置和查看资源组内 Azure Sphere 设备资源的 Azure Monitor 数据
产品工程 (2a) Azure Sphere 发布者 Azure Sphere 目录 • 所有目录资源的只读访问权限
• 将图像添加到目录
• 下载设备功能以启用设备开发
• 下载目录证书信息
产品工程 (2b) Azure Sphere 参与者 开发、现场测试和现场测试操作系统评估设备组 • 为 OS 输入、第三方应用部署和崩溃转储设置设置设备组属性
• 将新映像部署到这些组中的设备
• 在这三个组中分配或取消分配设备
• 配置和查看资源组内 Azure Sphere 设备资源的 Azure Monitor 数据
机队运营 (3a) Azure Sphere 读取器 Azure Sphere 目录 • 所有目录资源的只读访问权限
• 下载目录证书信息
机队运营 (3b) Azure Sphere 参与者 生产和生产操作系统评估设备组 • 为 OS 输入、第三方应用部署和崩溃转储设置设置设备组属性
• 将新镜像部署到这些组别的设备上
• 在这两个组中分配或取消分配设备
设备制造商 (4a) Azure RBAC 自定义角色(请参阅下面的其他详细信息) Azure Sphere 目录 • 仅用于申领和批量申领的设备

为设备制造商用户配置 Azure RBAC 自定义角色 虽然 Azure Sphere 内置 RBAC 角色为许多常见用例提供,但在某些情况下,可能需要 Azure RBAC 自定义角色。 自定义角色允许您为用户启用特定的许可操作。 对于此示例方案,我们需要配置一个自定义 RBAC 角色,该角色允许设备制造商将设备声明到目录,但不允许设备制造商执行任何其他用户作或浏览目录中的其他资源,例如图像、产品或设备组。

若要使设备制造用户能够认领设备,需要创建一个自定义角色,以启用目录的认领和批量认领功能。

用户操作 许可 描述
索赔 写入:Devices_CreateOrUpdate 一次最多声明 5 台设备
批量索赔 写入:DeviceGroups_ClaimDevices 一次申领超过 5 台设备

警告

  • 需要将 Azure Sphere(旧版)租户集成到 Azure Sphere(集成)目录的用户必须将 Azure Sphere 参与者Azure Sphere 参与者角色应用到拥有租户所属订阅的资源组。

  • 虽然只能在产品或设备组而不是父目录上为用户分配 RBAC 角色,但用户将无法从其 Azure 主屏幕搜索产品或设备组或其父目录。 他们只能通过直接指向它的 URL 访问产品或设备组。 为方便用户,我们建议所有用户至少拥有 Azure Sphere Reader 的目录访问权限。