2017-11-03 14 views
0

誰かが私にこれを手助けできるかどうか疑問に思っていました。私は認証せずにboto3を使用してs3バケット内のファイルのリストを取得しようとしています。私はaws s3 ls s3://mysite.com/ --no-sign-request --region us-east-2を使用してこれを達成することができますが、私はboto3を使用してpythonicのやり方でこれをやろうとしています。AWS Boto3認証なしでファイルリストを取得

現在、boto.session.Session()を使用しようとすると、資格情報を要求しています。私はSessionが常に資格情報が必要だと思う

おかげ

答えて

6

。署名を無効にして、代わりにboto3.resource('s3')を使用してバケットにアクセスできるようにする必要があります。 this answerによると

from botocore.handlers import disable_signing 
resource = boto3.resource('s3') 
resource.meta.client.meta.events.register('choose-signer.s3.*', disable_signing) 

そしてそれはの場合でなければなりません:これは完璧です

bucket = resource.Bucket('mysite.com') 

for item in bucket.objects.all(): 
    print(item.key) 
+0

!ありがとう! – securisec

関連する問題