Я пытаюсь перейти от python boto к новому модулю boto3 для управления файлами на Amazon S3.Подключитесь к Amazon S3 с boto3 с ролями IAM
Мне также нужно использовать роли 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 ролях:
http://boto3.readthedocs.org/en/latest/
Как добавить разрешение с Python Boto3? – Utopia