Как использовать роль IAM для доступа к ресурсам с использованием временных учетных данных?

Я использую роли AWS IAM, которые позволяют экземпляру иметь доступ к определенным ресурсам с использованием временных учетных данных API (ключ доступа, секретный ключ и токен безопасности).

Когда я проверяю временные учетные данные с помощью этого сценария ruby, он запускается без проблем:

require 'rubygems'
require 'aws-sdk'
AWS.config(
    :access_key_id     => "MY ACCESS KEY GOES HERE",
    :secret_access_key => "MY SECRET KEY GOES HERE",
    :session_token     => "MY TOKEN GOES HERE")
s3 = AWS::S3.new()
myfile = s3.buckets['My-Config'].objects["file.sh"]
File.open("/tmp/file.sh", "w") do |f|
    f.write(myfile.read)
end

Но при использовании командной строки для запуска cfn-description-stacks я получаю сообщение об ошибке:

export AWS_CREDENTIAL_FILE=aws_credentials.cfg
cfn-describe-stacks
cfn-describe-stacks:  Refused: The security token included in the request is invalid

и вот мой aws_credentials.cfg:

AWSAccessKeyId=MY ACCESS KEY
AWSSecretKey=My SECRET KEY
AWSToken="MY TOKEN=="

Так чего мне здесь не хватает? Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос