可以使用boto进行未经身份验证的桶列表?

时间:2015-06-05 15:12:31

标签: amazon-s3 boto

我正在使用boto与S3存储桶进行交互,在某些情况下,我只是希望能够在不传递凭据的情况下列出可公开读取的存储桶。如果我传递凭据,boto实际上不允许我列出存储桶,即使它是公开可见的。是否可以连接到S3并列出存储桶而不用传递凭据?

2 个答案:

答案 0 :(得分:2)

文档没有提到它,但在深入研究代码后,我发现了一个可以解决我问题的隐藏的kwarg:

conn = boto.connect_s3(anon=True)

然后,您可以在任何公开可读的存储桶上调用conn.get_bucket()

答案 1 :(得分:0)

我发现,如果你只是阅读桶头,那么这种方法没有可信度:

import boto3
s3 = boto3.resource('s3')
bucket = s3.Bucket(options.bucket)
s3.meta.client.head_bucket(Bucket=bucket.name)

use it当我需要ping我的存储桶以便于阅读时。