Wahrscheinlich enthält Ihr Bucket-Name einen Punkt, weshalb die ssl-Zertifikatsprüfung fehlschlägt. Dies ist ein recht häufiges Problem, siehe dieses github-Problem zum Beispiel.
Verwenden Sie keine unsichere Verbindung ( is_secure=False
), verwenden Sie stattdessen OrdinaryCallingFormat
:
Sie müssen wahrscheinlich Ihre AWS-Region aktualisieren. z.B us-east-1
Ich stoße auch auf dieses Problem. Meine Umgebung ist Ubuntu 15.04, Python 2.7.9 und Boto 2.38.0.
Wenn das Argument validate_certs = False gesetzt wird, funktioniert es nicht mit der HTTPS-Verbindung ohne gültiges Zertifikat. Nachdem ich den Code von Boto gelesen hatte, stellte ich fest, dass es ein Verhalten von Pythons ssl-Modulen ist. Dann habe ich hier eine Lösung gefunden: "SSL: CERTIFICATE_VERIFY_FAILED" Fehler . Und die Lösung funktioniert !!!.
macOS-Benutzer: Wenn Sie Python 3.6 von python.org verwenden binary installer auf dieser Seite verlinkt, lesen Sie bitte sorgfältig die Wichtige Informationen während der Installation angezeigt; diese Information steht auch nach der Installation zur Verfügung, indem Sie auf klicken / Anwendungen / Python 3.6 / ReadMe.rtf. Es gibt wichtige Informationen dort über Änderungen in der Python 3.6.0 Installer geliefert, insbesondere im Hinblick auf die Validierung von SSL-Zertifikaten.
Aus ReadMe.rtf zum Zeitpunkt des Schreibens:
Zertifikatsüberprüfung und OpenSSL
NEU Diese Variante von Python 3.6 enthält jetzt eine eigene private Kopie von OpenSSL 1.0.2. Im Gegensatz zu früheren Versionen ist dies veraltet Von Apple bereitgestellte OpenSSL-Bibliotheken werden nicht mehr verwendet. Das bedeutet auch dass die Trust-Zertifikate in System- und Benutzerschlüsseln von verwaltet werden die Keychain Access-Anwendung und das Sicherheitsbefehlszeilen-Dienstprogramm werden vom Python-SSL-Modul nicht mehr als Standard verwendet. Für 3.6.0, a Beispielskript ist in / Applications / Python 3.6 to enthalten Installieren Sie ein kuratiertes Paket von Standardstammzertifikaten von der Zertifikatspaket von Drittanbietern ( Ссылка ). Wenn Sie sich dafür entscheiden, certifi zu verwenden, sollten Sie in Erwägung ziehen, das Abonnement zu abonnieren Der E-Mail-Aktualisierungsdienst des Projekts wird benachrichtigt, wenn das Zertifikat vorliegt Bündel wird aktualisiert.
Der im Python 3.6-Installationsprogramm enthaltene gebündelte Pip hat seine eigene Standard-Zertifikatspeicher zum Überprüfen der Download-Verbindungen.
Tags und Links python amazon amazon-s3 amazon-web-services boto