当Ansible运行良好时,AWS CLI会出现InvalidClientTokenId错误

时间:2017-05-25 09:51:59

标签: ansible boto3 aws-cli

我有以下设置:

  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.
  4. 由于我的一些Ansible任务运行的是AWS cli命令的shell命令,这种行为也使我的Ansible运行变得混乱。

    为什么AWS表现得如此奇怪?或者我在这里做错了什么?

    PS:我的~/.aws/config看起来像这样:

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

2 个答案:

答案 0 :(得分:1)

session / security条款存在混淆,请参阅this issue

要使botoaws cli都正常工作,请复制它们:

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

答案 1 :(得分:0)

不用试试    aws_session_token = LT;&GT;

我的工作正常,只有aws_access_key_id和〜/ .aws.credentials中的aws_secret_access_key