「完全な権限」IAM ロールを持つインスタンスからスクリプトを実行しているにもかかわらず、AWS Ruby SDK を使用して Route53 からホストされたゾーンのリストを取得しようとすると、「リクエストに含まれるセキュリティ トークンが無効です」というエラーが表示されます。完全なトレースは次のとおりです。
/usr/lib/ruby/gems/1.8/gems/aws-sdk-1.6.9/lib/aws/core/client.rb:318:in `return_or_raise': The security token included in the request is invalid (AWS::Route53::Errors::InvalidClientTokenId)
from /usr/lib/ruby/gems/1.8/gems/aws-sdk-1.6.9/lib/aws/core/client.rb:419:in `client_request'
from (eval):3:in `list_hosted_zones'
from test.rb:7
そして test.rb ファイル:
require 'rubygems'
require 'aws-sdk'
AWS.config()
r53 = AWS::Route53.new
resp = r53.client.list_hosted_zones
resp[:hosted_zones].each do |zone|
puts zone
end
EC2 と Elastic Load Balancer を同じ SDK で管理する別のコードをテストしたところ、問題なく動作していたため、この問題は Route53 SDK メソッドに関連しているようです。
どう思いますか ?私は何かを逃しましたか?ありがとうございました !