用boto3与IAM角色连接到Amazon S3
问题描述:
我正尝试从python boto转移到新的boto3模块,用于在Amazon S3上操作文件。用boto3与IAM角色连接到Amazon S3
我还需要使用Amazon IAM角色,就像我在旧的boto模块中一样。我不知道的IAM角色是如何设置的服务器上,但我不得不这样做是:
s3_conn = S3Connection()
,我会得到所有的服务器可以访问分区的访问。
这似乎是在boto3不同:
s3 = boto3.resource('s3')
for bucket in s3.buckets.all():
print(bucket.name)
我得到一个错误:
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/boto3/resources/collection.py", line 83, in __iter__
for page in self.pages():
File "/usr/local/lib/python2.7/dist-packages/boto3/resources/collection.py", line 161, in pages
pages = [getattr(client, self._py_operation_name)(**params)]
File "/usr/local/lib/python2.7/dist-packages/botocore/client.py", line 310, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/usr/local/lib/python2.7/dist-packages/botocore/client.py", line 407, in _make_api_call
raise ClientError(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the ListBuckets operation: Access Denied
我通过boto3文档去,但我不知道我需要做的设置了IAM角色:
如何使用Python Boto3添加权限? – Utopia