Когда я просто запускаю следующий код, я всегда получаю эту ошибку.Boto3 Ошибка: botocore.exceptions.NoCredentialsError: Не удалось найти учетные данные
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)
Я сохранил свое удостоверение файл в
C:\Users\myname\.aws\credentials
, откуда Boto следует читать мои полномочия.
Является ли моя установка неправильной?
Вот результат от 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
Вы можете разместить отладочный вывод, добавляя 'boto3.set_stream_logger ('botocore', уровень = 'DEBUG')' перед кодом? Он покажет, где он ищет учетные данные. – jamesls
кажется, что Boto ищет довольно мало мест для конфигурационного файла учетных данных, но, по-видимому, по какой-то причине не смотрит в мой домашний каталог ... –
Попробуйте установить переменную среды '' HOME'' для указания на '' C: \ Пользователи \ myname'' или установите '' AWS_SHARED_CREDENTIALS_FILE'', чтобы указать прямо на ваш файл учетных данных. – garnaat