処理の実行
AWS IDを取得します。
コマンド:
aws_account_id=$( \
aws sts get-caller-identity \
--query 'Account' \
--output text \
) \
&& echo ${aws_account_id}
結果(例):
仮想MFAデバイスのシリアル番号を取得します。
コマンド:
mfa_device_serial=$( \
aws iam list-virtual-mfa-devices \
--query "VirtualMFADevices[?SerialNumber == \`arn:aws:iam::${aws_account_id}:mfa/${MFA_DEVICE_NAME}\`].SerialNumber" \
--output text \
) \
&& echo ${mfa_device_serial}
結果(例)
arn:aws:iam::<AWSアカウントID>:mfa/handson-cli-iam-user-basic_user-user-mfa
QRコードをCloud9環境で表示します。
QRコードをMFAソフトウェアに読み込ませます。
注釈
操作方法については、MFAソフトウェアのマニュアルをご確認ください。
MFAソフトウェアから認証コードの取得
MFAソフトウェアに表示された6桁の数字2回分を変数に格納します。
注釈
1回目と2回目の数字は、必ずMFAソフトウェア上で連続して表示されたものである必要があります。
MFAソフトウェアに表示された認証コード(1回目)を変数に格納します。
変数の設定:
MFA_AUTH_CODE1='<連続した認証コードの1回目>'
MFAソフトウェアに表示された認証コード(2回目)を変数に格納します。(1回目の直後に表示された認証コードである必要があります。)
変数の設定:
MFA_AUTH_CODE2='<連続した認証コードの2回目>'
仮想MFAデバイスの有効化
仮想MFAデバイスの有効化します。
変数の確認:
cat << END
# IAM_USER_NAME:"handson-cli-iam-user-basic_user-user"
IAM_USER_NAME="${IAM_USER_NAME}"
# mfa_device_serial:"arn:aws:iam::<AWSアカウントID>:mfa/handson-cli-iam-user-basic_user-user-mfa"
mfa_device_serial="${mfa_device_serial}"
# MFA_AUTH_CODE1:"<連続した認証コードの1回目>"
MFA_AUTH_CODE1="${MFA_AUTH_CODE1}"
# MFA_AUTH_CODE2:"<連続した認証コードの2回目>"
MFA_AUTH_CODE2="${MFA_AUTH_CODE2}"
END
コマンド:
aws iam enable-mfa-device \
--user-name ${IAM_USER_NAME} \
--serial-number ${mfa_device_serial} \
--authentication-code1 ${MFA_AUTH_CODE1} \
--authentication-code2 ${MFA_AUTH_CODE2}
結果(例):
完了確認
「IAMユーザー"handson-cli-iam-user-basic_user-user"のMFAが有効になっている。」ことを確認します。
コマンド:
aws iam list-virtual-mfa-devices \
--query "VirtualMFADevices[?User.UserName == \`${IAM_USER_NAME}\`].User.UserName" \
--output text
結果(例):
handson-cli-iam-user-basic_user-user