Skip to content

Instantly share code, notes, and snippets.

@msysyamamoto
Created March 2, 2020 01:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save msysyamamoto/7714f0da8e5ead0cd5e2143a0b28d54a to your computer and use it in GitHub Desktop.
Save msysyamamoto/7714f0da8e5ead0cd5e2143a0b28d54a to your computer and use it in GitHub Desktop.
#! /bin/bash
#
# Usage
# $ source <(./set-session-token.sh arn:aws:iam::123456789012:mfa/msysyamamoto 123456)
#
serial_number=$1
token_code=$2
unset AWS_ACCESS_KEY_ID
unset AWS_SECRET_ACCESS_KEY
unset AWS_SESSION_TOKEN
result="$(aws sts get-session-token --serial-number "${serial_number}" --token-code "${token_code}" 2>&1)"
AWS_ACCESS_KEY_ID="$(echo "$result" | jq -r '.Credentials.AccessKeyId')"
AWS_SECRET_ACCESS_KEY="$(echo "$result" | jq -r '.Credentials.SecretAccessKey')"
AWS_SESSION_TOKEN="$(echo "$result" | jq -r '.Credentials.SessionToken')"
echo export AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
echo export AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
echo export AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment