Amazon Batch 执行 IAM 角色 - Amazon Batch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Batch 执行 IAM 角色

执行角色授予 Amazon ECS 容器和 Amazon Fargate 代理代表您 Amazon 进行 API 调用的权限。

注意

该执行角色由 Amazon ECS 容器代理版本 1.16.0 和更高版本支持。

执行 IAM 角色是必需的,具体取决于任务的要求。您可以将多个执行角色用于与您的账户关联的服务不同目的。

注意

有关 Amazon ECS 实例角色的信息,请参阅 Amazon ECS 实例角色。有关服务角色的更多信息,请参阅如何 Amazon Batch 与 IAM 配合使用

Amazon ECS 提供 AmazonECSTaskExecutionRolePolicy 托管策略。该策略包含上述常见使用案例所需的权限。对于特殊使用案例,可能需要向您的执行角色添加内联策略,这些策略概述如下。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*" } ] }

您可以使用以下过程检查并确定您的账户是否已拥有执行角色并且已附加托管 IAM policy(如果需要)。

在 IAM 控制台中检查 ecsTaskExecutionRole
  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择角色

  3. 在角色列表中搜索 ecsTaskExecutionRole。如果找不到角色,请参阅创建执行 IAM 角色。如果找到该角色,请选择角色以查看附加的策略。

  4. 在 “权限” 选项卡上,验证 AmazonECS TaskExecutionRolePolicy 托管策略是否已附加到该角色。如果附加该策略,则将正确配置 执行角色。否则,请执行以下子步骤来附加策略。

    1. 选择添加权限,然后选择附加策略

    2. 搜索亚马逊TaskExecutionRolePolicy

    3. 选中 Amazonec s 政策左侧的复选框并选择附加TaskExecutionRolePolicy政策。

  5. 选择 Trust Relationships(信任关系)。

  6. 验证信任关系是否包含以下策略。如果信任关系符合以下策略,则该角色的配置正确。如果信任关系不匹配,请选择编辑信任策略,输入以下策略,然后选择更新策略

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ecs-tasks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

创建执行 IAM 角色

如果您的账户尚未具有执行角色,请使用以下步骤创建角色。

创建 ecsTaskExecutionRole IAM 角色
  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择 Roles(角色)。

  3. 选择 创建角色

  4. 对于 可信实体类型,选择 Amazon Web Service

  5. 对于服务或使用案例,选择 EC2。然后再次选择 EC2

  6. 选择下一步

  7. 要查看权限政策,请搜索亚马逊 ECS TaskExecutionRolePolicy

  8. 选中 AmazonECS TaskExecutionRolePolicy 政策左侧的复选框,然后选择 “下一步”。

  9. 对于角色名称,输入 ecsTaskExecutionRole,然后选择创建角色