我经常收到这样的错误:
An error occurred (InvalidClientTokenId) when calling the AssumeRole operation: The security token included in the request is invalid.当我运行此假设角色命令时:
aws sts assume-role --role-arn <arn role i want to assume> --role-session-name dev --serial-number <my arn> --token-code <keyed in token code>这是以前的工作,所以我不确定有什么可以改变。并且不知道如何调试它。
有什么建议吗?
发布于 2019-02-09 05:30:09
我也有同样的问题。在运行sts命令之前,您可能需要取消设置AWS环境变量:
unset AWS_SECRET_ACCESS_KEY
unset AWS_SECRET_KEY
unset AWS_SESSION_TOKEN然后是你的命令:
aws sts assume-role --role-arn <arn role i want to assume> --role-session-name dev --serial-number <my arn> --token-code <keyed in token code>在这里您将获得新的凭据。然后再次运行导出:
export AWS_ACCESS_KEY_ID=<access key>
export AWS_SECRET_ACCESS_KEY=<secret access key>
export AWS_SESSION_TOKEN=<session token>我希望它能有所帮助!
发布于 2020-07-13 20:16:39
如果您是第一次运行STS命令,那么您需要在运行STS命令的环境中执行aws configure并设置AWS access key和secret key。STS命令使用该数据验证身份,并检查您是否有权限执行STS assume role。
如果您已经配置了现有的访问密钥和密钥,则这些密钥也可能已过期。因此,您可能需要在IAM中为用户生成新密钥,并在您运行的环境中对其进行配置。
发布于 2021-07-23 08:23:58
检查~/.aws/credentials文件中的aws_access_key_id和aws_secret_access_key是否正确。
如果是,则如果~/.aws/credentials文件包含aws_session_token,则仅删除文件中的该行,保存更改并重新运行命令。
对我很管用。
https://stackoverflow.com/questions/47034903
复制相似问题