如何使用boto3在EC2实例上访问S3存储桶?

0

【以下的问题经过翻译处理】 我有一个使用Flask开发的应用程序,需要访问存储在S3中的一些配置文件。由于这些文件中包含敏感信息,我不想将它们存储在Git仓库中。我想使用Boto3将这些文件读取到EC2实例中。

我想知道如何使用Boto3访问S3中的这些文件。EC2实例已被授权访问S3存储桶,而且应用程序将在经过授权的EC2实例上运行。那么可以肯定地说,在该实例上运行的任何代码也将具有此访问权限。请注意,我将运行这些脚本以从我的"appspec.yml"中的"config files"中读取文件。

总之,我的CodeDeploy实例能否使用我的EC2实例上的授权来访问S3存储桶,或者我还需要为CodeDeploy实例提供访问权限?我知道我可以将我的访问密钥添加到我计算机上的环境中以运行此脚本,但在CodeDeploy上如何运行?

1 回答
0

【以下的回答经过翻译处理】 CodeDeploy正在使用一个服务角色。这个服务角色必须具有读取S3存储桶/对象(如果使用KMS加密密钥,则也需要读取它)的访问权限,以及对您的EC2实例的权限。如果您将从运行在ec2的应用程序中使用boto3从S3下载代码,则它将使用ec2的配置文件。

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则