我需要在docker入口点期间进行一些需要访问某些AWS资源的初始化。
我的应用程序也可以使用基于隐式角色的AWS访问,而不是在app config中配置密钥对。
IAM角色如何在任务中运作?我只能在ECS容器实例上找到IAM角色文档。
答案 0 :(得分:8)
从版本1.11.0开始,ECS容器代理支持任务IAM角色,因此接受的答案不再适用。虽然,我怀疑它是第一位的,因为ECS container instance是一个承载Docker容器实例并由ECS容器代理管理的EC2实例。
使用Amazon ECS任务的IAM角色,您可以指定任务中容器可以使用的IAM角色。应用程序必须使用AWS凭据签署其AWS API请求,此功能提供了管理应用程序使用的凭据的策略,类似于Amazon EC2实例配置文件为EC2实例提供凭据的方式。
答案 1 :(得分:3)
ECS任务将采用给定容器的IAM角色/实例配置文件。没有任务级别方法来分配不同的IAM角色。
Amazon ECS Container Instance IAM Role
Amazon ECS容器代理调用Amazon ECS API 代表您的操作,因此运行代理的容器实例 要求服务的IAM策略和角色知道代理 属于你的。在您启动容器实例并注册之前 将它们放入集群中,您必须为这些容器创建IAM角色 它们启动时使用的实例。此要求适用于 使用Amazon ECS优化的AMI启动的容器实例 由Amazon提供,或与您打算运行的任何其他实例一起提供 代理人。