控制对批处理作业虚拟机操作系统映像的访问权限

本页介绍了如何配置可信映像政策约束条件。这样,您就可以控制对 用于创建任何 Compute Engine 的启动磁盘 虚拟机实例

默认情况下,用户可以使用任何公共映像 为运行其虚拟机的 Compute Engine 虚拟机 批量作业。 如果未启用可信映像政策限制条件,并且您不想限制虚拟机操作系统映像,则可以停止阅读本文档。

启用可信映像政策限制条件 如果您希望项目、文件夹或组织中的所有用户都 创建包含符合您政策的已批准软件的虚拟机,或 安全要求 如果启用了可信映像政策约束条件,受影响的用户将无法运行批处理作业,除非其作业的虚拟机操作系统映像已获准。如需在启用可信映像政策约束条件时创建和运行作业,请执行以下操作之一:

如需详细了解虚拟机操作系统映像和启动磁盘,请参阅 VM 操作系统环境概览。如需了解为您的项目、文件夹或组织启用了哪些政策限制,请查看组织政策

准备工作

  1. 如果您之前未使用过批处理功能,请参阅开始使用批处理,并完成适用于项目和用户的前提条件,以启用批处理功能。
  2. 如需获得配置组织政策所需的权限,请让您的管理员为您授予组织的 Organization Policy Administrator (roles/orgpolicy.policyAdmin) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

    您也可以通过自定义角色或其他预定义角色来获取所需的权限。

允许使用批处理功能上传图片

以下步骤介绍了如何使用 Google Cloud 控制台或 Google Cloud CLI 修改受信任映像政策约束条件,以允许来自批处理的所有虚拟机操作系统映像。

有关如何使用可信映像的更多说明 (compute.trustedImageProjects) 政策限制条件,请参阅 设置可信映像政策

控制台

  1. 转到组织政策页面。

    转到“组织政策”

  2. 在政策列表中,点击定义可信映像项目

    系统会打开政策详情页面。

  3. 政策详情页面上,点击 管理政策修改政策 页面。

  4. 修改政策页面上,选择自定义

  5. 对于强制执行政策,请选择强制执行选项。

  6. 点击添加规则

  7. 政策值列表中,您可以选择是添加允许访问所有未指定映像项目的规则、拒绝访问所有未指定映像项目的规则,还是指定一组要允许或拒绝访问的自定义项目。如需允许来自批处理的所有图片,请执行以下操作:

    1. 政策值列表中,选择自定义。 系统会显示政策类型自定义值字段。
    2. 政策类型列表中,选择允许
    3. 自定义值字段中,输入 projects/batch-custom-image
  8. 如需保存规则,请点击完成

  9. 要保存并应用组织政策,请点击保存

gcloud

以下示例说明了如何允许 从 Batch 中对特定项目执行下列操作:

  1. 如需获取项目的现有政策设置,请运行 resource-manager org-policies describe 命令

    gcloud resource-manager org-policies describe \
       compute.trustedImageProjects --project=PROJECT_ID \
       --effective > policy.yaml
    

    PROJECT_ID 替换为您要更新的项目的项目 ID。

  2. 在文本编辑器中打开 policy.yaml 文件。然后,通过将 projects/batch-custom-image 添加到 allowedValues 字段来修改 compute.trustedImageProjects 约束条件。例如,仅允许 Batch 中的虚拟机操作系统映像 将 compute.trustedImageProjects 限制条件设置为以下内容:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allowedValues:
        - projects//batch-custom-image
    

    修改完 policy.yaml 文件后,保存更改。

  3. 如需将 policy.yaml 文件应用于您的项目,请使用 resource-manager org-policies set-policy 命令

    gcloud resource-manager org-policies set-policy \
       policy.yaml --project=PROJECT_ID
    

    PROJECT_ID 替换为您要更新的项目的项目 ID。

更新完限制条件后,建议您测试这些限制条件,以验证其是否按预期运行。

后续步骤