я получаю: Маркер безопасности включен в запрос недействителенAWS SDK рубин DynamoDB session_token недействителен
Где я могу получить маркер сеанса? Текущая документация сбивает с толку. С одной стороны, он говорит:
Если вы делаете запрос с использованием AWS :: DynamoDB с долгосрочными учетными данными, запрос на временные учетные данные Amazon STS выполняется. Они будут кэшироваться в процессе и повторно использоваться.
и рядом он говорит:
Amazon DynamoDB требует, чтобы все запросы сделаны с краткосрочными учетными данными (например, требуется маркер сеанса).
так точно, откуда происходит session_token, если я его не предоставил? И если вызов обеспечивает его, почему он будет недействительным?
requires 'aws-sdk'
cred = {:access_key_id => 'xxxx',
:secret_access_key => 'yyyy'}
#:session_token => ''}
ddb = AWS::DynamoDB.new(cred)
items = {...}
ddb.batch_write do |batch|
batch.put('my_mappings', items)
end
Обратите внимание, что в irb инициализация DynamoDB.new работает нормально только с помощью: access_key_id и: secret_access_key. Нет session_key. Кроме того, в коде я могу работать с дескриптором 'ddb'. – dcvii