AWS ECS - 如何将任务的执行角色传递给 Boto3?
Posted
技术标签:
【中文标题】AWS ECS - 如何将任务的执行角色传递给 Boto3?【英文标题】:AWS ECS - How to pass task's execution role to Boto3? 【发布时间】:2021-06-27 19:13:17 【问题描述】:我正在使用运行 Windows Server 2019 AMI/Docker 的 EC2 实例运行 ECS 服务 - 但是在运行使用 boto3 的任务时,日志显示
botocore.exceptions.NoCredentialsError: Unable to locate credentials
据我所知,任务的执行角色应该提供给容器,而 boto3 应该承担该角色。
是否需要额外的配置才能让 boto3 在 Windows 容器或一般 ECS 中承担 ECS 实例角色?
【问题讨论】:
【参考方案1】:这可能是一个令人困惑的主题。 ECS 任务有两个角色:
ECS 用于访问 ECR 存储库和更新负载均衡器目标等的“任务执行角色”。 ECS 任务中运行的代码可用于访问 AWS 服务的“任务角色”。对于在 ECS 内运行的 boto3,您必须指定 Task Role。添加任务角色后,boto3 将自动获取凭据。
【讨论】:
以上是关于AWS ECS - 如何将任务的执行角色传递给 Boto3?的主要内容,如果未能解决你的问题,请参考以下文章