切换 IAM 角色(AWS CLI)

配置多个 Profile

  1. 使用命名配置文件:aws configure --profile <profile-name>

  2. 依次输入 AWS Access Key IDAWS Secret Access Keyregion nameoutput format 即可完成配置

file

  1. 此时生成的 configcredentials 文件中,会使用 profile-name 来区分不同的配置

file

使用多个 Profile

基本用法

  1. 命令后面加上参数 --profile <profile_name> 即可使用 profile_name 对应的 profile

  2. 如下命令使用 Record Chinaprofile 来查看 S3 下的 bucket list

file

简化

  1. 每次输入 --profile <profile_name> 是很繁琐的事情,在 MacLinux 下,可以使用 alias 来简化
alias aws_Record-China='aws --profile Record-China'
1
  1. 之后每次使用的时候,直接使用 aws_Record-China 来使用 Record-Chinaprofile 运行 aws 命令

  2. 以下命令设置 aws_Record-China 为使用 Record-Chinaprofile 来运行 aws 命令

file

  1. 添加到 ~/.zshrc 中使得 alias 永久生效
echo "alias aws_Record-China='aws --profile Record-China'" >> ~/.zshrc
1

设置默认的 Profile

  1. 如果有一个账号是使用的比较频繁的,而不想每次都使用 alias 的方式来运行 aws 命令,也可以设置环境变量 AWS_DEFAULT_PROFILE 为频繁使用的账号名,此时输入 aws时候,会自动使用指定的账号配置
export AWS_DEFAULT_PROFILE=Record-China
1
  1. 运行结果如下:

file

  1. 添加到 ~/.zshrc 中来使 AWS_DEFAULT_PROFILE 永久生效
echo "export AWS_DEFAULT_PROFILE=Record-China" >> ~/.zshrc
1

参考

  1. AWS Command Line Interface Documentation (opens new window)

  2. 如何在 aws cli 中使用多个配置文件 (opens new window)