【问题标题】:How to change the default profile variable in aws cli?如何更改 aws cli 中的默认配置文件变量?
【发布时间】:2019-04-25 17:09:57
【问题描述】:

我尝试将 aws cli 与 docker 图像一起使用。

命令行如下:

slu@machine:/c/work/dfsi$ export AWS_PROFILE=role-development
slu@machine:/c/work/dfsi$ aws ecr get-login

发生错误

(AccessDeniedException) 调用 GetAuthorizationToken 时 操作:用户:arn:aws:iam::XXXXXXXXXXXX:user/slu 未授权 执行:ecr:GetAuthorizationToken 在资源上:*

但我可以:

aws ecr get-login --profile=role-development

我想做的显然不是写--profile并尝试用隐藏的--profile variable来做吗?

怎么做?

【问题讨论】:

  • 您是在询问默认配置文件凭据在您计算机上的存储位置吗?将使用在 [default] 下在该文件中设置的任何凭据。
  • 我不问默认配置文件,我想将配置文件更改为角色开发作为默认配置文件,怎么做?
  • 我认为这里还有另一个问题。这似乎是切换配置文件的正确方法。您的设置是否还有其他可能导致此问题的内容?
  • 当您键入“export”时,您是否看到正确指定了您的配置文件配置?该名称是否与您的 ~/.aws/config 完全匹配?
  • 是的,角色开发在 ~/.aws/config 中定义。我只想使用该配置文件而不是默认配置文件,就像在 aws 控制台切换角色中一样

标签: amazon-web-services variables aws-cli


【解决方案1】:

以下环境变量按预期为我工作。

AWS_DEFAULT_PROFILE=profile-name

【讨论】:

    【解决方案2】:
    • step1:echo $AWS_DEFAULT_PROFILE 看看你的环境变量是什么。
    • 第二步:export AWS_DEFAULT_PROFILE=your_aws_default_profile_name

    要验证,只需运行 aws iam list-users 以查看根据您的个人资料返回的内容。

    【讨论】:

      【解决方案3】:

      如果您设置了AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY,那么它们将覆盖AWS_PROFILEAWS_DEFAULT_PROFILE 中的任何内容

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-17
        • 1970-01-01
        • 2015-10-19
        • 2013-12-16
        • 2013-10-07
        • 2019-09-20
        • 2023-01-13
        • 1970-01-01
        相关资源
        最近更新 更多