Not*_*bby 7 amazon-s3 amazon-web-services amazon-iam docker docker-compose
如果代码中没有我的 AWS 凭证,如何从容器访问我的 S3 存储桶?
我的代码也会自动部署,因此将其作为环境变量也不好(部署脚本位于存储库中 - 并且凭据也应该在那里)。
我尝试研究 IAM 角色,但无法理解对我的用例有帮助的东西。
如果您直接在 EC2 实例上运行容器(不使用 ECS 服务),那么您需要创建一个IAM role并向其附加适当的策略(例如AmazonS3FullAccess,如果您需要 S3 的所有权限,如果您只需要读取 S3 的内容) ,然后您可以添加AmazonS3ReadOnlyAccess策略)。创建此角色后,您可以将其附加到运行容器的 EC2 实例。
如果您使用的是 ECS 服务,那么您可以将此角色附加到您定义容器的任务(仍然可以将其附加到底层 EC2 容器实例 - 但仅限于 EC2 启动类型,而不是 Fargate - 用于容器来承担该角色,但最好尽可能细化 - 各个任务都有自己的角色)。
您永远不应该将 AWS 凭证添加到您的代码中或将它们存储在 EC2 实例/容器中,这就是您拥有角色的原因。
| 归档时间: |
|
| 查看次数: |
14039 次 |
| 最近记录: |