Wenn ich einfach den folgenden Code ausführen, bekomme ich immer diesen Fehler.Boto3 Fehler: botocore.exceptions.NoCredentialsError: Anmeldeinformationen können nicht gefunden werden
s3 = boto3.resource('s3')
bucket_name = "python-sdk-sample-%s" % uuid.uuid4()
print("Creating new bucket with name:", bucket_name)
s3.create_bucket(Bucket=bucket_name)
Ich habe meine Credential-Datei in
gespeichertC:\Users\myname\.aws\credentials
, von wo aus Boto sollte meine Anmeldeinformationen lesen.
Ist meine Einstellung falsch?
Hier ist der Ausgang von boto3.set_stream_logger('botocore', level='DEBUG')
.
2015-10-24 14:22:28,761 botocore.credentials [DEBUG] Skipping environment variable credential check because profile name was explicitly set.
2015-10-24 14:22:28,761 botocore.credentials [DEBUG] Looking for credentials via: env
2015-10-24 14:22:28,773 botocore.credentials [DEBUG] Looking for credentials via: shared-credentials-file
2015-10-24 14:22:28,774 botocore.credentials [DEBUG] Looking for credentials via: config-file
2015-10-24 14:22:28,774 botocore.credentials [DEBUG] Looking for credentials via: ec2-credentials-file
2015-10-24 14:22:28,774 botocore.credentials [DEBUG] Looking for credentials via: boto-config
2015-10-24 14:22:28,774 botocore.credentials [DEBUG] Looking for credentials via: iam-role
Können Sie die Debug-Ausgabe Post durch Zugabe von 'boto3.set_stream_logger ('botocore', Ebene = 'DEBUG')', bevor Sie Ihren Code? Es wird angezeigt, wo nach Anmeldeinformationen gesucht wird. – jamesls
Es sieht so aus, als ob Boto nach einigen Stellen für die Anmeldekonfigurationsdatei sucht, aber aus irgendeinem Grund anscheinend nicht in mein Heimatverzeichnis schaut ... –
Versuchen Sie, die Umgebungsvariable '' HOME'' so einzustellen, dass sie auf '' C: \ zeigt Users \ myname'' oder Einstellung "AWS_SHARED_CREDENTIALS_FILE", um direkt auf Ihre Anmeldeinformationsdatei zu verweisen. – garnaat