Pynamodb Амазонка учетных исключений
Я слежу за документацией по pynamodb
class Thread(Model):
class Meta:
read_capacity_units = 1
write_capacity_units = 1
table_name = "Thread"
region = 'us-west-1'
host = "http://localhost:8888"
forum_name = UnicodeAttribute(hash_key=True)
subject = UnicodeAttribute(range_key=True)
views = NumberAttribute(default=0)
replies = NumberAttribute(default=0)
answered = NumberAttribute(default=0)
tags = UnicodeSetAttribute()
last_post_datetime = UTCDateTimeAttribute(null=True)
# Delete the table
# print(Thread.delete_table())
# Create the table
if not Thread.exists():
Thread.create_table(wait=True)
Когда я запускаю выше кода, его ошибка
DEBUG:pynamodb.connection.base: вызов DescribeTable с аргументами {'TableName': 'Thread'}
и поднять исключение:-
повысить TableError("Невозможно описать таблицу: {0}".format(e), e) TableError: Невозможно описать таблицу: Невозможно найти учетные данные
Как предоставить ключ pynamodb aws_secret_key_id и aws_access. Я запускаю пример на локальном компьютере с использованием DynamodB Local.
Как я предоставляю учетные данные в pynamodb. Я установил переменные окружения aws_secret_key_id и aws_access_key, но все еще исключая учетные данные
Есть ли способ предоставить aws_access_key_id и aws_secret_access_key в качестве параметра в pynamodb, как показано ниже:-
этот код работает и создать базу данных, но я хочу использовать библиотеку pynamodb
DynamodB = Boto3.resource("DynamodB", регион_имя = "США-запад-2", aws_access_key_id = "ключ доступа", aws_secret_access_key = "секретный ключ доступа", endpoint_url="http://localhost:8888")
1 ответ
В мета-классе включите
aws_access_key_id = "anything"
aws_secret_access_key = "fake"
Вы можете дать любой поддельный секретный ключ доступа и ключ доступа.
У меня была аналогичная проблема, и у меня было такое же исключение
решение заключалось в настройке aws с помощью терминала с aws configure
а затем просмотреть конфигурацию aws configure list
но в моем случае у меня была другая проблема (я использую Ubuntu), когда я использовал aws configure list
Я обнаружил, что конфигурация не задана, но когда я использовал `sudo aws configure list', она работает.
поэтому я пошел в '~/.aws' и изменил права доступа к файлу учетных данных с помощью команды
sudo chmod +r credentials
тогда моя команда для создания Dynamodb и проведения тестов работала.
Создайте файл ~/.aws/credentials и введите
[default]
aws_access_key_id = 'foo'
aws_secret_access_key = 'bar
или еще лучше