AWSを使い始めたとき、最初にやるべきことのひとつがIAMユーザーの作成です。
「rootアカウントのまま使い続けてもいいんじゃない?」と思うかもしれませんが、それはAWS的にはNG。今回は、IAMユーザーを作ってMFA(二段階認証)を設定するまでをまるごと解説します。
IAMってなに?小学生でもわかる説明
IAMは「Identity and Access Management」の略で、日本語にすると「誰が・何をしていいかを管理する仕組み」です。
イメージとしては、学校の先生と生徒の関係に近いです。
- root(校長先生):なんでもできる。でも普段は教室に出てこない
- IAMユーザー(先生や生徒):それぞれ決められた範囲のことだけできる
rootアカウントは「全部の鍵を持っている校長先生」なので、普段使いすると危険。だから作業用のIAMユーザーを別に作って、そっちを使うのがAWSのお作法です。
今回やること
- IAMユーザーを作る
- AdministratorAccess権限をつける
- MFA(二段階認証)を設定する
手順① IAMユーザーを作る
AWSマネジメントコンソールにrootアカウントでログインして、上の検索バーに「IAM」と入力→クリック。
左メニューの「ユーザー」→「ユーザーの作成」をクリックします。
設定はこのとおり:
- ユーザー名:好きな名前でOK(例:
aya-admin) - AWSマネジメントコンソールへのアクセス:チェックを入れる
- 次回サインイン時にパスワード変更を要求:自分用ならチェックを外してOK
主なポリシーの権限比較
| ポリシー名 | できること | 使いどころ |
|---|---|---|
| AdministratorAccess | AWSの全操作が可能 | 自分用の管理者アカウント |
| PowerUserAccess | IAM以外の全操作が可能 | 開発者に渡すアカウント |
| ReadOnlyAccess | 全サービスの閲覧のみ | 監査・確認用アカウント |
| AmazonS3FullAccess | S3だけフルアクセス | S3専用の作業アカウント |
| AmazonEC2ReadOnlyAccess | EC2の閲覧のみ | EC2の状態確認だけしたい場合 |
ポイント:最小権限の原則
必要な権限だけを渡すのがAWSのベストプラクティス。今回の自分用アカウントはAdministratorAccessでOKですが、他の人や自動処理(Lambda・EC2ロールなど)に渡す場合は必要な権限だけに絞るのが鉄則です。
手順② 権限(ポリシー)をつける
「次へ」を押すと権限設定の画面が出ます。3つの選択肢があるので「ポリシーを直接アタッチ」を選びます。
検索ボックスに「AdministratorAccess」と入力→一番上に出てくる「AdministratorAccess(AWS 管理 – ジョブ機能)」にチェック。
「次へ」→「ユーザーの作成」で完了です。
作成が完了すると、サインイン用のURLとユーザー名が表示されます。このURLは後で使うのでメモしておきましょう。
手順③ MFA(二段階認証)を設定する
MFAとは「Multi-Factor Authentication」の略で、パスワードに加えてもう一つの認証(スマホのアプリなど)を使う仕組みです。
- IAMコンソール →「ユーザー」→ 作ったユーザー名をクリック
- 「セキュリティ認証情報」タブを開く
- 「MFAデバイスの割り当て」→「割り当て」をクリック
- デバイスの種類は「認証アプリケーション」を選ぶ
- スマホのGoogle AuthenticatorでQRコードをスキャン
- 表示された6桁コードを「MFAコード1」に入力→30秒待つ→次の6桁を「MFAコード2」に入力
- 「MFAの追加」で完了!
ハマったポイント
MFAデバイス名の入力でエラーが出ました。
デバイス名に日本語や使えない文字を入れると「無効な名前です」というエラーが出ます。使えるのは半角英数字と + = , . @ _ - だけ。
→ aya-admin-mfa のようにシンプルな半角英数字+ハイフンにすればOKです。
まとめ
- IAMユーザー(
aya-admin)を作成 - AdministratorAccess権限をアタッチ
- Google AuthenticatorでMFAを設定
これでrootアカウントを使わずに作業できる、セキュアな管理者アカウントができました。次回は既存のIAMロールを最小権限に絞る「最小権限の原則」を実践してみます。

