方法
AWSCLIで取得してjqで加工して保存する。
コマンドの実行はすべてコマンドプロンプトで実行するよう。
結果はそれぞれのシェルに貼り付ける。
exportなし
実行
cmd
aws sts get-session-token --duration-seconds 3600 | jq -r ".Credentials | .[\"AWS_ACCESS_KEY_ID\"]=.AccessKeyId | .[\"AWS_SECRET_ACCESS_KEY\"]=.SecretAccessKey | .[\"AWS_SESSION_TOKEN\"]=.SessionToken | del(.AccessKeyId,.SecretAccessKey,.SessionToken,.Expiration) | to_entries[] | \"\(.key)=\(.value)\""
結果
cmd
AWS_ACCESS_KEY_ID=XXXX
AWS_SECRET_ACCESS_KEY=YYYY
AWS_SESSION_TOKEN=ZZZZ
Shell用
実行
cmd(export)
aws sts get-session-token --duration-seconds 3600 | jq -r ".Credentials | .[\"export AWS_ACCESS_KEY_ID\"]=.AccessKeyId | .[\"export AWS_SECRET_ACCESS_KEY\"]=.SecretAccessKey | .[\"export AWS_SESSION_TOKEN\"]=.SessionToken | del(.AccessKeyId,.SecretAccessKey,.SessionToken,.Expiration) | to_entries[] | \"\(.key)=\(.value)\""
結果
console
export AWS_ACCESS_KEY_ID=XXXX
export AWS_SECRET_ACCESS_KEY=YYYY
export AWS_SESSION_TOKEN=ZZZZ
コマンドプロンプト
実行
cmd(set)
aws sts get-session-token --duration-seconds 3600 | jq -r ".Credentials | .[\"set AWS_ACCESS_KEY_ID\"]=.AccessKeyId | .[\"set AWS_SECRET_ACCESS_KEY\"]=.SecretAccessKey | .[\"set AWS_SESSION_TOKEN\"]=.SessionToken | del(.AccessKeyId,.SecretAccessKey,.SessionToken,.Expiration) | to_entries[] | \"\(.key)=\(.value)\""
結果
console
set AWS_ACCESS_KEY_ID=XXXX
set AWS_SECRET_ACCESS_KEY=YYYY
set AWS_SESSION_TOKEN=ZZZZ
PowerShell
実行
cmd(ps)
aws sts get-session-token --duration-seconds 3600 | jq -r ".Credentials | .[\"$Env:AWS_ACCESS_KEY_ID\"]=.AccessKeyId | .[\"$Env:AWS_SECRET_ACCESS_KEY\"]=.SecretAccessKey | .[\"$Env:AWS_SESSION_TOKEN\"]=.SessionToken | del(.AccessKeyId,.SecretAccessKey,.SessionToken,.Expiration) | to_entries[] | \"\(.key)=\\\"\(.value)\\\"\""
結果
console
$Env:AWS_ACCESS_KEY_ID="XXXX"
$Env:AWS_SECRET_ACCESS_KEY="YYYY"
$Env:AWS_SESSION_TOKEN="ZZZZ"