mod_wsgi和aws访问键

时间:2018-01-30 12:15:43

标签: python amazon-web-services amazon-s3 mod-wsgi boto3

我有一个在Apache和mod_wsgi下运行的Flask应用程序。 它需要从AWS S3读取,所以我使用boto3。 我做的是运行 aws configure 来创建〜/ .aws,然后将其移动到 为WSGI配置的主页。但是当我运行应用程序时,我得到了:

botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the ListBuckets operation: Access Denied

如果我将WSGI app启动文件中的密钥设置为os.environ['AWS_....'] = ...,它可以正常工作。

所以问题是如何根据在mod_wsgi下运行的Flask app来使用aws configure输出?

1 个答案:

答案 0 :(得分:0)

在OS级别设置AWS_PROFILE环境变量。在Linux中,您将在'/ etc / environment'

中创建变量

AWS_PROFILE =我的资料

或者,您可以为实例配置文件创建IAM角色,并以这种方式提供适当的权限。