被ECS的角色要求搞糊涂了

Ant*_*ong 18 amazon-iam amazon-ecs

我正在尝试设置一个 ECS,但到目前为止我遇到了一些权限问题,我已经在这个论坛上提出了一些问题。

我想我到目前为止被卡住了,因为老实说,我无法在一个地方简明地找出所有这些角色要求。

似乎我需要定义至少两个角色:

1) ECS 容器 http://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html

2) ECS 任务 http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#enable_task_iam_roles

这是正确的吗?

我错过了什么吗?是否有任何特殊的 IAM 要求?

Sam*_*arp 32

唯一必需的角色是Container Instance IAM 角色。此角色允许 ECS 代理(在您的 EC2 实例上运行)与 Amazon ECS 进行通信。

您可能还会发现其他五个角色对不同用途很有用:

  • ECS 服务相关角色 (SLR) - 此角色使 Amazon ECS 能够代表您管理与您的应用程序关联的各种 AWS 资源。使用Service 时,此角色允许 Amazon ECS 管理与您的服务关联的负载均衡器(经典负载均衡器、应用程序负载均衡器和网络负载均衡器)和服务发现(使用Route 53)。使用任务联网时,此角色允许 Amazon ECS 将弹性网络接口 (ENI)附加和分离到您的任务。使用AWS Fargate时需要此角色。
  • Service Scheduler IAM 角色- 在引入 ECS 服务相关角色 (SLR) 之前,此角色与服务结合使用,使 Amazon ECS 能够管理与您的服务关联的负载均衡器。如果您想在 ECS 服务中使用弹性负载均衡器(无论是传统负载均衡器、应用程序负载均衡器还是网络负载均衡器),您可以使用此角色。现在 ECS SLR 可用,您可以使用这两个角色中的任何一个,但如果您想限制授予 Amazon ECS 的权限以涵盖特定负载均衡器资源,您可能仍希望使用此角色。
  • Auto Scaling IAM 角色- 此角色与服务结合使用,允许 Application Auto Scaling 服务扩展或扩展所需的服务数量。
  • 任务 IAM 角色- 此角色可用于任何任务(包括由Service启动的任务)。此角色与EC2 实例配置文件非常相似,但允许您将权限与单个任务相关联,而不是与托管这些任务的底层 EC2 实例相关联。如果您在需要不同权限的 ECS 集群中运行多个不同的应用程序,您可以使用 Task IAM 角色为每个 Task 授予特定权限,而不是确保集群中的每个 EC2 实例都具有组合的权限集应用程序需要。
  • 任务执行角色- 使用AWS Fargate时需要此角色并替换容器实例 IAM 角色,该角色不适用于FARGATE启动类型。此角色使 AWS Fargate 能够从Amazon ECR 中提取您的容器映像并将您的日志转发到Amazon CloudWatch Logs。此角色还用于(在 Fargate 和 EC2 启动类型上)从 AWS Secrets Manager 和 AWS Systems Manager Parameter Store启用私有注册表身份验证机密