要使用AWS assume-role的Bash脚本,你可以按照以下步骤进行操作:
创建一个名为"assume-role.sh"的文件,使用文本编辑器打开它。
添加以下代码到"assume-role.sh"文件中:
#!/bin/bash
# 定义变量
role_arn="YOUR_ROLE_ARN"
session_name="YOUR_SESSION_NAME"
mfa_serial="YOUR_MFA_SERIAL"
token_code=""
# 获取MFA令牌代码
echo "Enter MFA token code: "
read token_code
# 调用assume-role命令
credentials=$(aws sts assume-role \
--role-arn $role_arn \
--role-session-name $session_name \
--serial-number $mfa_serial \
--token-code $token_code \
--output text)
# 提取临时凭证
access_key=$(echo $credentials | awk '{print $2}')
secret_key=$(echo $credentials | awk '{print $4}')
session_token=$(echo $credentials | awk '{print $5}')
expiration=$(echo $credentials | awk '{print $3}')
# 输出临时凭证
echo "Access Key: $access_key"
echo "Secret Key: $secret_key"
echo "Session Token: $session_token"
echo "Expiration: $expiration"
替换以下变量的值:
保存并关闭文件。
在终端中,通过以下命令为"assume-role.sh"文件添加可执行权限:
chmod +x assume-role.sh
现在,你可以运行脚本并输入MFA令牌代码来获取临时凭证。临时凭证将被输出到终端上。
请注意,你需要先安装并配置AWS CLI,以及在运行脚本之前登录到AWS CLI,并验证你的访问密钥是否正确。