【AWS】作業用のユーザ(IAMユーザ)作成手順

AWS のアカウントを作ったあと、最初に使えるのはアカウント作成時のメールアドレスでサインインするルートユーザです。実際の作業はルートユーザでは行わず、作業用のユーザ(IAM ユーザ)を作って使います。この記事では、マネジメントコンソールで IAM ユーザを1つ作り、そのユーザでサインインするまでを確かめます。

この記事でわかること
  1. ルートユーザと IAM ユーザの違い
  2. IAM ユーザの作成手順(コンソールのパスワード、ポリシー、確認)
  3. IAM ユーザ用のサインイン URL と、サインインの確認

ルートユーザと IAM ユーザ

AWS アカウントを作ると、アカウント作成時のメールアドレスとパスワードでサインインするルートユーザができます。ルートユーザは、アカウントのすべての AWS サービスとリソースに完全にアクセスでき、アカウントの設定変更や解約のように、ルートユーザにしかできない操作もあります。

そのため、ルートユーザは日常の作業には使わず、ルートユーザでしかできない操作のときだけ使うことが推奨されています。普段の作業には、アカウントの中に作る IAM ユーザを使います。

AWS アカウント(12桁のアカウント ID)ルートユーザアカウント作成時のメールアドレスでサインインすべてのサービスとリソースに完全にアクセスできる日常の作業には使わないIAM ユーザユーザ名とパスワードでサインインポリシーで権限を付ける作業はこのユーザで行う作成
図1 ルートユーザと IAM ユーザ

IAM ユーザには、ポリシーで必要な権限を付けて、仮想マシンの作成などの作業を行います。複数の人が作業する場合は、1人に1つずつ IAM ユーザを割り当てると、ユーザごとに権限を変えられます。AWS CloudTrail の記録にも、どの IAM ユーザが操作したかが残ります。

現在の推奨

この記事は、個人の検証環境で作業用の IAM ユーザを作った手順です。現在の AWS のベストプラクティスでは、人が使うアカウントには IAM Identity Center などのフェデレーションで一時的な認証情報を使うことが推奨されています。複数の人や複数のアカウントで使う環境では、IAM Identity Center も検討してください。

また、ルートユーザには MFA(多要素認証)を設定しておきます。

IAM ユーザの作成

マネジメントコンソールにルートユーザでサインインし、左上の「サービス」をクリックします。検索欄に IAM と入れて IAM の画面を開き、IAM ›› アクセス管理 ›› ユーザー を開いて「ユーザーを追加」をクリックします。

画面イメージについて

この記事の画面は、実際の画面ではなく、検証時(2020年)の画面から設定する項目(見るポイント)を抜き出して描いたイメージです。AWS のコンソールは画面の構成や表記がよく変わるので、今の画面とは違います。ユーザ名、アカウント ID は伏せています。

現在のコンソールでは、ボタンの名前が「ユーザーの作成」になり、ユーザーの詳細の指定、許可の設定、確認と作成の順に進みます(タグは確認の画面で付けられます)。アクセスキー(プログラムによるアクセス)は、ユーザを作ったあとに、そのユーザの「セキュリティ認証情報」タブで作ります。設定する項目の意味は同じなので、この記事では検証時の画面の順に説明します。

ユーザー詳細を設定する

ユーザ名と、AWS へのアクセスの種類、コンソールのパスワードを決めます。

IAM コンソール(ユーザーを追加 1/5:ユーザー詳細の設定)画面イメージ
1ユーザー名(伏せています)
2アクセスの種類☐ プログラムによるアクセス
☑ AWS マネジメントコンソールへのアクセス
3コンソールのパスワード○ 自動生成パスワード◉ カスタムパスワード
••••••••••••••
4パスワードのリセットが必要☐ ユーザーは次回のサインインで新しいパスワードを作成する必要があります
キャンセル5次のステップ: アクセス権限
図2 ユーザー詳細の設定(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1ユーザー名サインインに使う名前です。作業する人がわかる名前にします。
2アクセスの種類「AWS マネジメントコンソールへのアクセス」にチェックします。「プログラムによるアクセス」は、AWS CLI や SDK で使うアクセスキーを作るときに選びます。
3コンソールのパスワードここでは「カスタムパスワード」を選び、自分でパスワードを決めます。パスワードは、アカウントのパスワードポリシーを満たす必要があります。
4パスワードのリセットが必要自分で使うユーザなので、チェックを外します。ほかの人にユーザを渡す場合は、チェックを入れて、最初のサインインで本人にパスワードを変えてもらいます。
5次のステップ: アクセス権限権限の設定に進みます。

アクセス権限を設定する

IAM ユーザに付ける権限を決めます。AWS には、よく使う権限をまとめたポリシー(AWS 管理ポリシー)が用意されています。「既存のポリシーを直接アタッチ」を選ぶとポリシーの一覧が表示されるので、ここではすべてのサービスとリソースを操作できる AdministratorAccess を選びます。

IAM コンソール(ユーザーを追加 2/5:アクセス許可の設定)画面イメージ
1○ ユーザーをグループに追加○ アクセス権限を既存のユーザーからコピー◉ 既存のポリシーを直接アタッチ
ポリシー名タイプ次として使用
2☑AdministratorAccessジョブ機能Permissions policy (1)
☐AlexaForBusinessDeviceSetupAWS による管理なし
☐AlexaForBusinessFullAccessAWS による管理なし
⋮ (580 件のうち、以下省略)
キャンセル戻る3次のステップ: タグ
図3 アクセス許可の設定(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1権限の付け方「既存のポリシーを直接アタッチ」を選びます。複数のユーザに同じ権限を付けるときは、グループにポリシーを付けて、ユーザをグループに入れる方法もあります。
2AdministratorAccessAWS 管理ポリシーの1つで、タイプは「ジョブ機能」です。アカウントのすべてのサービスとリソースに対して、すべての操作を許可します。
3次のステップ: タグタグの設定に進みます。
権限は必要な分だけ

AdministratorAccess は、ルートユーザにしかできない操作を除き、ほぼすべての操作ができる強い権限です。個人の検証環境なら作業しやすい権限ですが、複数の人で使う環境では、作業に必要な権限だけを付ける(最小権限)ようにします。AWS 管理ポリシーは誰でも使える汎用のものなので、必要に応じて、用途に合わせたカスタマー管理ポリシーを作ります。

タグを設定する

「タグの追加 (オプション)」の画面では、ユーザにキーと値の組(タグ)を付けられます。部署名などを付けておくと、ユーザの整理や管理に使えます。今回はタグを付けずに「次のステップ: 確認」をクリックします。

設定を確認して作成する

最後に設定内容を確認し、「ユーザーの作成」をクリックします。

IAM コンソール(ユーザーを追加 4/5:確認)画面イメージ
ユーザー詳細
ユーザー名(伏せています)
1AWS アクセスの種類AWS マネジメントコンソールへのアクセス – パスワードを使用
コンソールのパスワードの種類カスタム
パスワードのリセットが必要いいえ
アクセス権限の境界アクセス権限の境界が設定されていません
アクセス権限の概要
タイプ名前
2管理ポリシーAdministratorAccess
タグ 追加されたタグはありません。
キャンセル戻る3ユーザーの作成
図4 設定の確認(実際の画面ではなく、確認のポイントを示したイメージです)
No.表示意味
1ユーザー詳細STEP 1 で決めた、コンソールへのアクセス、パスワードの種類、パスワードのリセットの有無が表示されます。
2アクセス権限の概要ユーザに付くポリシーです。AdministratorAccess が管理ポリシーとして付きます。
3ユーザーの作成クリックすると、IAM ユーザが作られます。

サインイン用の URL を控える

次の画面が表示されれば、作成は成功です。IAM ユーザは、アカウントごとのサインイン用 URL(https://(アカウント ID).signin.aws.amazon.com/console)からサインインするので、ブックマークなどに保存しておきます。ログイン手順をメールで送ることもできます。

IAM コンソール(ユーザーを追加 5/5)画面イメージ
1 成功
AWS マネジメントコンソールへのアクセス権を持つユーザーは「https://(伏せています).signin.aws.amazon.com/console」でサインインできます
.csv のダウンロード
ユーザーログイン手順を E メールで送信
2 (伏せています)E メールの送信
図5 作成の完了(実際の画面ではなく、表示のポイントを示したイメージです)
No.表示意味
1成功(緑)ユーザが作られました。表示されたサインイン用 URL を控えます。URL にはアカウント ID が入っています。
2作成したユーザ(緑のチェック)作成したユーザの行です。「E メールの送信」で、サインインの手順をメールで送れます。

IAM ユーザでサインインする

控えておいたサインイン用 URL にアクセスします。URL から開くと、アカウント ID(12桁)は最初から入っています。STEP 1 で決めたユーザ名とパスワードを入れて、「サインイン」をクリックします。

作業 PChttps://(アカウント ID).signin.aws.amazon.com/consoleアカウント ID入力済み(URL から)ユーザ名IAM ユーザの名前パスワードコンソールのパスワード
図6 IAM ユーザのサインイン
サインイン画面(IAM ユーザーとしてサインイン)画面イメージ
1アカウント ID (12 桁) またはアカウントエイリアス(伏せています)
2ユーザー名(伏せています)
パスワード••••••••••••••
 ルートユーザーの E メールを使用したサインイン
パスワードをお忘れですか?
3サインイン
図7 IAM ユーザとしてサインイン(実際の画面ではなく、入力項目のポイントを示したイメージです)
No.項目入力する内容
1アカウント IDサインイン用 URL から開くと入力済みになっています。
2ユーザー名/パスワードSTEP 1 で決めた IAM ユーザの名前とパスワードです。
3サインインクリックしてサインインします。ルートユーザでサインインするときは、下のリンクからメールアドレスでサインインします。

サインインすると、AWS マネジメントコンソールの画面が表示されます。右上に、サインインしたユーザ名が「ユーザ名 @ アカウント」の形で表示されます。

AWS マネジメントコンソール画面イメージ
aws サービス ▾1(伏せています) @ (伏せています) ▾ 東京 ▾
AWS マネジメントコンソール
サービスを検索する例 :Relational Database Service、データベース、RDS
最近アクセスしたサービスIAM EC2
図8 サインイン後のコンソール(実際の画面ではなく、確認のポイントを示したイメージです)
No.表示意味
1右上のユーザ名作った IAM ユーザの名前が表示されていれば、IAM ユーザでサインインできています。その右はリージョン(ここでは東京)です。

まとめ

項目この記事の設定ポイント
アクセスの種類AWS マネジメントコンソールへのアクセスアクセスキーは CLI や SDK を使うときだけ作る
パスワードカスタムパスワード、リセット不要ほかの人に渡すときはリセットを必要にする
権限AdministratorAccess を直接アタッチ複数人で使うときは必要な権限だけにする
タグなし任意
サインインhttps://(アカウント ID).signin.aws.amazon.com/consoleURL を控えておく

ルートユーザは日常の作業に使わず、作業用の IAM ユーザを作ってサインインします。このあとの VPC や EC2 の作業は、ここで作った IAM ユーザで行います。

コメント