AWS在我的CLI上但在IAM上不删除用户

时间:2018-09-27 01:06:34

标签: amazon-web-services command-line-interface amazon-iam

我在CLI上有一个适用于AWS的用户

当我这样做

  
    
      

aws iam get-user

    
  

我得到:

{
"User": {
    "UserName": "mbeta",
    "PasswordLastUsed": "2018-09-27T00:19:08Z",
    "CreateDate": "2018-02-02T02:38:57Z",
    "UserId": "xxx",
    "Path": "/",
    "Arn": "arn:aws:iam::xx:user/mbeta"
}
}

问题是用户正在覆盖凭据以在使用某些AWS凭据的“ localhost”上启动服务器

  
    
      

cat .aws / credentials

    
  
[thaServer]
aws_access_key_id = xxxyyy
aws_secret_access_key = zzz/eee
region = ap-southeast-2

因此,当我尝试运行服务器时,它会使用我的CLI用户...

我已经请另一位同事跑步

  
    
      

aws iam get-user

    
  

他得到:

Unable to locate credentials. You can configure credentials by running "aws configure".

所以我的问题是,如何仅删除我的CLI信息或指向服务器凭据的正确用户?

不从IAM中删除我的用户。干杯

1 个答案:

答案 0 :(得分:1)

在我的〜/ .aws / credentials中,我有几个配置文件:

[default]
aws_access_key_id = <REMOVED>
aws_secret_access_key = <REMOVED>
[k8s]
aws_access_key_id = <REMOVED>
aws_secret_access_key = <REMOVED>
[jenkins]
aws_access_key_id = <REMOVED>
aws_secret_access_key = <REMOVED>

所有配置文件都有不同的IAM角色,我将它们用于不同的任务。默认情况下,所有命令显然都使用默认配置文件。

使用 k8s 配置文件列出具有awscli的S3存储桶的示例为:

aws s3api list-buckets --profile k8s

您没有提到要尝试运行哪种服务器,所以我只能为您提供一般的解决方案,选择其中任何一个:

  • 更改默认配置文件
  • 创建一个单独的凭证文件并在服务器配置中指定文件路径
  • 创建一个专用的Linux用户来运行服务器