前提
- "aws configure --profile profile名" が済んでいる前提とします。
- iamでグループつくるのが済んでいる前提とします。
- profile名は testとして書いています。
- コマンドの後ろに必ず --profile profile名とつけると変な環境に実行しないで済むので必ずつける方針にしています。
環境変数として設定値を指定しておく
AWS_PROFILE_NAME=test # 作りたいところのプロフィール名
USER_NAME=test-user # ユーザー名
PASSWORD=iD8Bkcd4-JrxUXQ5v # 初期パスワード
GROUP_NAME=developer # グループ名 先にiamで作っとく必要あります。
ユーザー作成
ユーザー作成は名前をつけるだけです。ログイン情報は別のコマンドになります。
コマンド
aws iam create-user \
--user-name $USER_NAME \
--path / \
--profile $AWS_PROFILE_NAME
--path は / 以外指定したことないけどまあいいか…。
結果出力
{
"User": {
"UserName": "ユーザー名",
"Path": "/",
"CreateDate": "2015-04-03T04:00:19.899Z",
"UserId": "文字列",
"Arn": "arn:aws:iam::AWSアカウントID:user/ユーザー名"
}
}
ユーザーがWebコンソールからログインできるようにする
コマンド
aws iam create-login-profile \
--user-name $USER_NAME \
--password $PASSWORD \
--password-reset-required \
--profile $AWS_PROFILE_NAME
--password-reset-required
パスワードは初回ログイン時にリセットしてもらうオプションを指定しときます。
結果出力
{
"LoginProfile": {
"UserName": "ユーザー名",
"CreateDate": "2015-04-03T04:00:21.142Z",
"PasswordResetRequired": true
}
}
ユーザーをなんかのグループに入れとく
入れないとなんの権限もないので、WEBコンソールでログインしてもなんもできないですね。
コマンド
aws iam add-user-to-group \
--group-name $GROUP_NAME \
--user-name $USER_NAME \
--profile $AWS_PROFILE_NAME
結果
何も出なかった気がする。
ユーザーのaws access key を作る
API経由で色々やるために入るけど、WEBコンソール
コマンド
aws iam create-access-key \
--user-name $USER_NAME \
--profile $AWS_PROFILE_NAME
結果出力
{
"AccessKey": {
"UserName": "ユーザー名",
"Status": "Active",
"CreateDate": "2015-04-03T04:10:43.927Z",
"SecretAccessKey": "シークレットキー",
"AccessKeyId": "アクセスキー"
}
}
あとはこれをメールで送るだけ。
ログインして作るより相当楽ちんですね。