1. ホーム
  2. ansible

[解決済み] Ansibleが正常に動作しているときにAWS CLIでInvalidClientTokenIdエラーが発生する

2022-02-07 12:17:49

質問

次のようなセットアップがあります。

  1. スクリプト updatecreds.py が実行され、STSを使用してAnsibleのcredsファイルにあるAWSのクレデンシャルを更新します。
  2. さて、そのクレドを持ってAnsibleでAWS関連のタスクを実行したところ、スムーズに実行されました。しかし、CLIコマンドではエラーが出てしまいます。
  3. で同じ認証情報を使用すると ~/.aws/config ファイルで、CLIコマンドを実行すると、次のようなエラーが発生します。 A client error (InvalidClientTokenId) occurred when calling the ListAccessKeys operation: The security token included in the request is invalid.

私のAnsibleタスクのいくつかは、AWSのcliコマンドであるシェルコマンドを実行しているので、この動作は私のAnsibleの実行も台無しにしています。

なぜAWSはこのような奇妙な挙動をするのでしょうか? それとも、私が何か間違ったことをしたのでしょうか?

PS : 私の ~/.aws/config はこのようになります。

[default]
aws_access_key_id=<>
aws_secret_access_key=<>
aws_session_token=<>
region=us-east-1

解決方法は?

での混乱があります。 session / security の用語は、以下を参照してください。 本号 .

を両方作るには botoaws cli が正常に動作することを確認し、複製してください。

[default]
aws_access_key_id=KEY
aws_secret_access_key=SECRET
aws_session_token=TOKEN
aws_security_token=TOKEN
region=REGION