AWS CLIを利用して、IAMユーザのログインプロファイルを作成してマネジメントコンソールからログインできるようにしてみます。
前提条件
IAMへの権限
- IAMに対してフル権限があること。
AWS CLIのバージョン
-
以下のバージョンで動作確認済
- AWS CLI 1.10.0
- AWS CLI 1.9.11
コマンド
aws --version
結果(例)
aws-cli/1.10.0 Python/2.7.5 Darwin/13.4.0 botocore/1.3.22
- 準備
=======
変数の確認
プロファイルとリージョンが想定のものになっていることを確認します。
変数の確認
aws configure list
結果(例)
Name Value Type Location
---- ----- ---- --------
profile iamFull-prjZ-mbp13 env AWS_DEFAULT_PROFILE
access_key ****************LOAQ shared-credentials-file
secret_key ****************I1O1 shared-credentials-file
region ap-northeast-1 env AWS_DEFAULT_REGION
- 事前作業
===========
1.1. 対象IAMユーザの指定
マネジメントコンソールからのログインを許可するIAMユーザを指定します。
変数の指定
IAM_USER_NAME=<USER_NAME>
1.2. ログインプロファイルの確認
対象となるIAMユーザのログインプロファイルが存在しないことを確認します
。
コマンド
aws iam get-login-profile \
--user-name ${IAM_USER_NAME}
結果(例)
A client error (NoSuchEntity) occurred when calling the GetLoginProfile operation: Cannot find Login Profile for User TestUser
1.3. 初期パスワードの指定
対象となるIAMユーザに提供する初期パスワードを指定します。
コマンド
IAM_PASSWORD_NEW='#userPass123'
- 設定
=======
変数の確認
cat << ETX
IAM_USER_NAME: ${IAM_USER_NAME}
IAM_PASSWORD_NEW: ${IAM_PASSWORD_NEW}
ETX
対象となるIAMユーザのログインプロファイルを作成します。
コマンド
aws iam create-login-profile \
--user-name ${IAM_USER_NAME} \
--password "${IAM_PASSWORD_NEW}"
結果(例)
{
"LoginProfile": {
"UserName": "TestUser",
"CreateDate": "2015-10-19T01:36:48.507Z",
"PasswordResetRequired": false
}
}
- 事後作業
===========
対象となるIAMユーザのログインプロファイルが存在することを確認します。
コマンド
aws iam get-login-profile \
--user-name ${IAM_USER_NAME}
結果(例)
{
"LoginProfile": {
"UserName": "TestUser",
"CreateDate": "2015-10-19T01:36:48Z",
"PasswordResetRequired": false
}
}
そのIAMユーザでマネジメントコンソールからログインできるようになっているはずです。