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

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

Amazon Batch执行 IAM 角色

该执行角色授予 Amazon ECS 容器并Amazon Fargate代理商进行许可AmazonAPI 代表您调用。执行 IAM 角色是必需的,具体取决于任务的要求。您可以将多个执行角色用于与您的账户关联的服务不同目的。

注意

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

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

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

执行角色将在Amazon Batch控制台首次运行体验;但是,您应手动为任务附加托管 IAM 策略,以便 Amazon ECS 能够在引入将 future 功能和增强功能时添加这些功能的权限。您可以使用以下过程检查并确定您的账户是否已拥有执行角色并且已附加托管 IAM 策略(如果需要)。

在 IAM 控制台中检查 ecsTaskExecutionRole

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

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

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

  4. 在存储库的Permissions (权限)选项卡中,验证AmazonECSTaskExecutionRolePolicy托管策略附加到角色。如果附加该策略,则将正确配置执行角色。否则,请执行以下子步骤来附加策略。

    1. 选择 Attach policies(附上策略)。

    2. 要缩小要附加的可用策略的范围,请为筛选条件键入 AmazonECSTaskExecutionRolePolicy

    3. 选中 AmazonECSTaskExecutionRolePolicy 策略左侧的框并选择 Attach policy

  5. 选择信任关系,然后选择编辑信任关系

  6. 验证信任关系是否包含以下策略。如果信任关系符合以下策略,请选择 Cancel。如果信任关系不符合,请将策略复制到 Policy Document 窗口中并选择 Update Trust Policy

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

创建执行 IAM 角色

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

创建ecsTaskExecutionRoleIAM 角色

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

  2. 在导航窗格中,选择 Roles(角色)和 Create role(创建角色)。

  3. 选择受信任实体的类型部分,选择Amazon服务.

  4. 选择一个使用案例部分,在或选择服务以查看其使用案例部分,选择弹性容器服务.

  5. 适用于选择您的使用案例,选择弹性容器服务任务,然后选择后续:Permissions (下一步:权限)

  6. 附加权限策略部分,搜索AmazonECSTaskExecutionRolePolicy中,选择策略,然后选择后续:标签,然后后续:审核

  7. 对于 Role Name (角色名称),键入 ecsTaskExecutionRole,然后选择 Create role (创建角色)