Mit boto
konnte ich eine Verbindung zu öffentlichen S3-Buckets ohne Anmeldeinformationen herstellen, indem Sie das Schlüsselwort anon=
übergeben.Kann ich Boto3 anonym benutzen?
s3 = boto.connect_s3(anon=True)
Ist dies mit boto3
möglich?
Mit boto
konnte ich eine Verbindung zu öffentlichen S3-Buckets ohne Anmeldeinformationen herstellen, indem Sie das Schlüsselwort anon=
übergeben.Kann ich Boto3 anonym benutzen?
s3 = boto.connect_s3(anon=True)
Ist dies mit boto3
möglich?
Ja. Ihre Anmeldeinformationen werden verwendet, um alle von Ihnen gesendeten Anforderungen zu signieren. Sie müssen also den Client so konfigurieren, dass er den Signierungsschritt überhaupt nicht ausführt. Sie können das tun, wie folgt:
import boto3
from botocore import UNSIGNED
from botocore.client import Config
s3 = boto3.client('s3', config=Config(signature_version=UNSIGNED))
# Use the client
deaktivieren Unterzeichnung
import boto3
from botocore.handlers import disable_signing
resource = boto3.resource('s3')
resource.meta.client.meta.events.register('choose-signer.s3.*', disable_signing)
Wird diese davon abhalten, Anmeldeinformationen verwendet werden, wenn sie vorhanden sind? Ist es als Standard geeignet? – MRocklin
Es wird verhindern, dass die Anmeldeinformationen auf diesem Client verwendet werden. Sie benötigen einen anderen Client, um eine Verbindung zu eingeschränkten S3-Buckets herzustellen. Das Gleiche gilt für meine Lösung. Hinweis: Beide Lösungen machen genau das Gleiche. –