IAMユーザー"handson-cli-sts-assume-role-user "にインラインポリシーを作成します。
手順に必要な設定値を変数に格納をします。
IAMユーザー名を指定します。
変数の設定: IAM_USER_NAME='handson-cli-sts-assume-role-user'
変数の設定:
IAM_USER_NAME='handson-cli-sts-assume-role-user'
インラインポリシー名を指定します。
変数の設定: IAM_USER_POLICY_NAME='STSAssumeRolePolicy'
IAM_USER_POLICY_NAME='STSAssumeRolePolicy'
ポリシードキュメント用ディレクトリを指定します。
変数の設定: DIR_IAM_POLICY_DOC="${HOME}/environment/conf-handson-cli-sts-assume-role"
DIR_IAM_POLICY_DOC="${HOME}/environment/conf-handson-cli-sts-assume-role"
IAMポリシードキュメント名を指定します。
変数の設定: IAM_POLICY_DOC_NAME='STSAssumeRolePolicy'
IAM_POLICY_DOC_NAME='STSAssumeRolePolicy'
ポリシードキュメントファイル名を指定します。
変数の設定: FILE_IAM_POLICY_DOC="${DIR_IAM_POLICY_DOC}/${IAM_POLICY_DOC_NAME}.json" \ && echo ${FILE_IAM_POLICY_DOC} 結果(例): ${HOME}/environment/conf-handson-cli-sts-assume-role/STSAssumeRolePolicy.json
FILE_IAM_POLICY_DOC="${DIR_IAM_POLICY_DOC}/${IAM_POLICY_DOC_NAME}.json" \ && echo ${FILE_IAM_POLICY_DOC}
結果(例):
${HOME}/environment/conf-handson-cli-sts-assume-role/STSAssumeRolePolicy.json
各変数に正しい設定値が格納されていることを確認します。
変数の確認: cat << END # 1. IAM_USER_NAME:"handson-cli-sts-assume-role-user" IAM_USER_NAME="${IAM_USER_NAME}" # 2. IAM_USER_POLICY_NAME:"STSAssumeRolePolicy" IAM_USER_POLICY_NAME="${IAM_USER_POLICY_NAME}" # 3. FILE_IAM_POLICY_DOC:"${HOME}/environment/conf-handson-cli-sts-assume-role/STSAssumeRolePolicy.json" FILE_IAM_POLICY_DOC="${FILE_IAM_POLICY_DOC}" END
変数の確認:
cat << END # 1. IAM_USER_NAME:"handson-cli-sts-assume-role-user" IAM_USER_NAME="${IAM_USER_NAME}" # 2. IAM_USER_POLICY_NAME:"STSAssumeRolePolicy" IAM_USER_POLICY_NAME="${IAM_USER_POLICY_NAME}" # 3. FILE_IAM_POLICY_DOC:"${HOME}/environment/conf-handson-cli-sts-assume-role/STSAssumeRolePolicy.json" FILE_IAM_POLICY_DOC="${FILE_IAM_POLICY_DOC}" END
各変数について、上の行と下の行の値の内容もしくは形式が同じであることを確認します。 もし異なる場合は、それぞれの手順番号に戻って変数の設定を行います。
IAMユーザーのインラインポリシーを作成します。
変数の確認: cat << END # IAM_USER_NAME:"handson-cli-sts-assume-role-user" IAM_USER_NAME="${IAM_USER_NAME}" # IAM_USER_POLICY_NAME:"STSAssumeRolePolicy" IAM_USER_POLICY_NAME="${IAM_USER_POLICY_NAME}" # FILE_IAM_POLICY_DOC:"${HOME}/environment/conf-handson-cli-sts-assume-role/STSAssumeRolePolicy.json" FILE_IAM_POLICY_DOC="${FILE_IAM_POLICY_DOC}" END コマンド: aws iam put-user-policy \ --user-name ${IAM_USER_NAME} \ --policy-name ${IAM_USER_POLICY_NAME} \ --policy-document file://${FILE_IAM_POLICY_DOC} 結果(例): (出力なし)
cat << END # IAM_USER_NAME:"handson-cli-sts-assume-role-user" IAM_USER_NAME="${IAM_USER_NAME}" # IAM_USER_POLICY_NAME:"STSAssumeRolePolicy" IAM_USER_POLICY_NAME="${IAM_USER_POLICY_NAME}" # FILE_IAM_POLICY_DOC:"${HOME}/environment/conf-handson-cli-sts-assume-role/STSAssumeRolePolicy.json" FILE_IAM_POLICY_DOC="${FILE_IAM_POLICY_DOC}" END
コマンド:
aws iam put-user-policy \ --user-name ${IAM_USER_NAME} \ --policy-name ${IAM_USER_POLICY_NAME} \ --policy-document file://${FILE_IAM_POLICY_DOC}
(出力なし)
「IAMユーザー"handson-cli-sts-assume-role-user"のインラインポリシー"STSAssumeRolePolicy"が存在する。」ことを確認します。
コマンド: aws iam list-user-policies \ --user-name ${IAM_USER_NAME}\ --query "PolicyNames[?contains(@,\`${IAM_USER_POLICY_NAME}\`)]"\ --output text 結果(例): STSAssumeRolePolicy
aws iam list-user-policies \ --user-name ${IAM_USER_NAME}\ --query "PolicyNames[?contains(@,\`${IAM_USER_POLICY_NAME}\`)]"\ --output text
STSAssumeRolePolicy
IAMダッシュボード( https://console.aws.amazon.com/iam/home )にアクセスします。
左ペインの"ユーザー"をクリックします。
ユーザー一覧(画面)
検索欄にユーザー名"handson-cli-sts-assume-role-user"を入力して、エンターキーを押します。
ユーザー名"handson-cli-sts-assume-role-user"をクリックします。
ユーザー概要(画面)
"アクセス権限"(タブ)をクリックします。
ユーザー概要/アクセス権限(タブ)
ポリシー名"STSAssumeRolePolicy"(タイプ: カスタマーインライン)が表示されていることを確認します。