嗨,我无法运行此命令
aws sts get-caller-identity
。
当我这样做时
sudo nano ~/.aws/credentials
我只能找到这个
[default]
aws_access_key_id = my_id
aws_secret_access_key = my_secret_id
在成功执行命令步骤
aws configure
后,当我执行aws sts get-caller-identity
时,我收到此错误
调用 GetCallerIdentity 操作时发生错误(InvalidClientTokenId):请求中包含的安全令牌无效。
有什么原因可能导致这种情况?
有时此类问题是由其他凭据配置引起的。
环境变量凭证配置优先于凭证配置文件。 因此,如果存在环境变量“AWS_ACCESS_KEY_ID”、“AWS_SECRET_ACCESS_KEY”或“AWS_SESSION_TOKEN”,如果配置错误或已过期,可能会产生问题。
尝试检查与 AWS 凭证关联的环境变量,并使用 Linux 中的“unset”命令删除它们。
此外,要永久删除环境变量,您需要删除配置文件中的相关行,例如:
参考:
我的默认区域默认被禁用(eu-south-1),所以我必须首先通过 Web 控制台启用它,然后它就可以工作了。
不要忘记导出该区域,否则会一直失败。当您从 AWS UI 复制凭证时,它不会复制或导出该区域。
例如导出 AWS_REGION=us-gov-east-1
最好将其放在您的个人资料中,例如 bash_profile 或 zshrc