我正在尝试迭代并检索有关帐户中所有S3存储桶的策略。
我正在尝试以下内容......
s3 = boto3.client('s3')
buckets = s3.list_buckets()
for bucket_name in buckets['Buckets']:
s3.get_bucket_policy(Bucket=bucket_name['Name'])
当我运行它时,我收到以下错误:
botocore.exceptions.ClientError: An error occurred (PermanentRedirect) when calling the GetBucketTagging operation: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.
我已根据https://github.com/boto/boto3/issues/81尝试使用s3.meta.client.get_bucket_location(Bucket=bucket_name['Name'])
,但None
的值为'LocationConstraint'
。
如何知道或确定任意存储桶的正确端点和/或区域?
答案 0 :(得分:0)
您正确地执行此操作,减去一个小名:值None
表示美国标准区域[1]或us-east-1
。此外,您不需要使用元客户端。您已创建的客户端使用get_bucket_location
方法。