はじめに
こんにちは。
プログラミング初心者wakinozaと申します。
勉強中に調べたことを記事にまとめています。
十分気をつけて執筆していますが、なにぶん初心者が書いた記事なので、理解が浅い点などあるかと思います。
間違い等あれば、指摘いただけると助かります。
記事を参考にされる方は、初心者の記事であることを念頭において、お読みいただけると幸いです。
記事のテーマ
- AWS SAA取得のため、AWSの勉強をしています。
- 備忘録として、AWSを始めた際に最低限行っておきたいセキュリティ項目について以下の事項をまとめています。
- 今回の前編では、ルートユーザーの初期設定と、IAMユーザーの作成までを説明していきます。
- 次回の後編では、請求データの確認とアラート設定、操作履歴の取得、脅威検知などの初期設定について説明する予定です。
前提
- AWSアカウント作成が完了し、ルートユーザーとしてログインできる状態からスタートします。
- 記事で紹介している画面は2026年3月時点のものです。AWSのサービス内容・価格・画面表示はしばしば変化されるため、その点を考慮して記事をお読みください。
目次
1. 責任共有モデル
2. ルートユーザーの初期設定
1. 責任共有モデル
クラウドサービスは便利な反面、十分なセキュリティ対策が必要です。
AWS(Amazon Web Services)は、セキュリティを「責任共有モデル(Shared Responsibility Model)」という形で説明しています。
責任共有モデルとは、セキュリティの責任範囲をAWSとユーザーで明確に分担する概念のことです。
サービスによって境界線は異なりますが、おおむね以下のように理解できます。
- AWSは、クラウド「の」セキュリティを担う:建物・電源・冷却装置などの物理設備、ネットワーク基盤、サーバー本体やソフトウェアの管理など
- ユーザーは、クラウド「内」のセキュリティを担う:データの保護、バックアップ、アクセス許可、ネットワーク設定、OSのパッチ適用など
要するに、AWSアカウントを取得したその日から、アカウントやサービスを保護するための行動が求められるということです。
この記事では、はじめてAWSアカウントを取得した人が、最低限やったほうが良いセキュリティ対策について紹介していきます。
2. ルートユーザーの初期設定
AWSアカウント作成時に自動的に作成されるユーザーを、「ルートユーザー」と呼びます。
ルートユーザーは、無制限の権限をもつ強力なユーザーであるため、万が一ユーザー情報が漏洩すると深刻なセキュリティ問題を起こすリスクがあります。
そのため、ルートユーザーは、緊急時やルートユーザーのみに権限が限定されたタスクにのみ利用し、日常的な作業は、後述する手順で作成する「管理者権限を持つIAMユーザー」で行います。
現在は組織管理においてIAM Identity Centerの利用が推奨されていますが、本記事では基本概念理解のため個別のIAMユーザー作成手順を解説します。
2.1. ルートユーザーのセキュリティ対策一覧
セキュリティ対策として、以下の項目を実行します。
- ルートユーザーの多要素認証を設定
- IAMパスワードポリシーの適用
- IAMグループとIAMユーザーの作成
- IAMユーザーの多要素認証の設定
- IAMユーザー/ロールの請求情報へのアクセス許可
2.2. 対策にかかるコスト
これらの対策は、AWSの「IAM(Identity and Access Management)」というサービスを利用します。
IAMはAWSアカウントに無料で提供されるサービスであるため、この記事で紹介するセキュリティ対策を実施しても、追加料金は発生しません。
IAMは、認証(Authentication)と認可(Authorization)を管理するサービスで、アクセス権限の制御、多要素認証の設定、一時的な認証トークンを用いた権限委任などが可能です。
また、IAMは「グローバル」なサービスであるため、世界中のAWSリージョン(地理的に分離されたデータセンター群)で同じアイデンティティと権限を利用可能です。
2.3. 手順
この記事で紹介するセキュリティ対策は、ルートユーザーで設定します。
まず、AWSのマネジメントコンソールから、ルートユーザーでAWSにログインしてください。
AWSのコンソールのホーム画面が表示され、右上にアカウントIDとアカウント名とが表示されていれば、ログイン完了です。
次に、IAMの設定画面に移動します。
検索欄(虫眼鏡のマーク)に「IAM」と入力してください。
検索結果から「IAM」をクリックしてください。
IAMダッシュボードの画面が表示されます。
2.3.1 ルートユーザーの多要素認証を設定
まずは、ルートユーザーに多要素認証(MFA)を設定します。
多要素認証は、ユーザー名とパスワードに加えて、さらに別の認証要素を要求することで、アカウントのセキュリティを高める仕組みです。
万が一、ルートパスワードが漏洩しても、多要素認証がなければログインできないため、不正アクセスの被害を減らすことができます。
IAMダッシュボードにある「セキュリティに関するレコメンデーション」という項目を見てください。
「セキュリティに関するレコメンデーション」には、推奨されるセキュリティ設定の一覧と、それらが実施されているかが表示されています。
アカウントを作成直後は、多くの項目が赤(未実施)になっていると思います。
項目の中から、「ルートアカウントのMFAを有効化」→「MFAの管理」のボタンをクリックしてください。
もし、「ルートアカウントのMFAを有効化」が見つからない場合は、IAMダッシュボードの「QuickLinks」の「自分の認証情報」をクリックしてください。
自分の認証情報の画面が表示されます。
画面から「多要素認証(MFA)」を探し、「MFAデバイスの割り当て」のボタンをクリックしてください。
MFAデバイスを選択という画面が表示されます。
まずは、「MFA device name」に任意のデバイス名を入力します。デバイス名は、有効な文字列であれば、何でも構いません。
次に、MFA deviceを選択します。
選択できるデバイスは、以下の通りです。
| 選択肢名 | 内容 | 具体例 | 追加費用 |
|---|---|---|---|
| パスキー | PCやスマートフォンの生体認証や画面ロック解除の仕組みを、MFAとして利用する | Windows Hello, Touch ID, iCloudキーチェーン, パスワードマネージャーなど | 追加費用なし |
| セキュリティキー | 専用のハードウェアをUSBポートに差し込んだり、NFC(近距離無線通信)で読み取らせたりして使用する | YubiKey, Titan Security Key、Feitianなど | 専用デバイスの購入費用が必要 |
| 認証アプリケーション | モバイルデバイスやタブレットにインストールされた認証アプリケーションを、MFA デバイスとして使用する。6 桁の認証コードを生成できる標準ベースのタイムベースドワンタイムパスワード (TOTP) アルゴリズムである RFC 6238 に準拠している | Google Authenticator, Microsoft Authenticator,Duo Mobile, Authyなど | 追加費用なし |
| ハードウェア TOTP トークン | スマートフォンを持ち込めないデータセンターや、特定のセキュリティ要件がある環境で利用される専用デバイス | Gemalto,Token2など | 専用デバイスの購入費用が必要 |
この中から、用途に合うものを選択します。
- セキュリティ要件が厳しい場合やすでに専用デバイスを持っている場合は、「セキュリティキー」か「ハードウェア TOTP トークン」
- スマホでワンタイムパスワード取得したい場合は、「認証アプリケーション」
- パソコン上で認証を完結させたい場合は、「パスキー」
この記事では、「パスキー」を選択します。
パスキーの表示名を入力後、「Next」ボタンを押してください。
以後は、お使いのデバイスのパスキーの設定画面が現れます。
利用したいパスキーの保存場所を選択し、ブラウザに表示される指示に従ってください。
MFAの設定が完了したら、一度ログアウトして、再度ログインしてください。
無事ログインできれば、MFAの登録は完了です。
なお、MFAはセキュリティを高める利点もありますが、万が一認証デバイスが破損するとログインできなくなるという欠点もあります。
そのため、ルートユーザーには複数のデバイスでMFAを設定することが推奨されます。
1つのアカウントで、最大で8台(仮想認証アプリ2台、FIDO認証デバイス6台)まで登録可能です。
複数のMFAを登録しておくことで、デバイスの紛失や破損時にもログインが可能になります。
2.3.2 IAMパスワードポリシーの適用
次にIAMパスワードポリシーの適用を行います。
IAMパスワードポリシーとは、どのような文字列をパスワードとして設定できるかというルールです。
アカウント作成直後のデフォルト設定は、利便性を重視してルールが緩く設定されています。
具体的には、最低文字数は8文字、パスワードの使いまわしの禁止も設定されていません。
8文字程度の短いパスワードでは、総当たり攻撃などにより比較的短時間で解読される可能性があり、セキュリティ的に安全とは言えません。
そこで、最新のセキュリティガイドラインに則ったパスワードルールを設定し、以後設定されるパスワードはそれらのルールを順守するよう強制することで、セキュリティの強化を実現します。
もし、企業やプロジェクトでパスワードポリシーが定められている場合は、それらのルールをIAMパスワードポリシーに設定します。
各自でパスワードポリシーを設定する場合は、文字数を最低でも14文字以上にしたり、パスワードの使いまわしを禁止するなど設定するとよいでしょう。
それでは、具体的な手順に移ります。
まず、IAMダッシュ―ボードの左側にある「アカウント設定」をクリックしてください。
画面にアカウント設定画面が表示されます。
アカウント設定画面の「パスワードポリシー」に現在設定されているパスワードポリシーが表示されています。
パスワードポリシーを設定する場合は、「編集」ボタンをクリックしてください。
パスワードポリシーの編集画面が表示されます。
「カスタム」にチェックを入れます。
「パスワードの最小文字数」「パスワードの強度」「その他の要件」等で設定したいポリシーを選択してください。
選択が終わったら、「変更を保存」をクリックしてください。
確認画面が出ますので、「カスタムを設定」をクリックしてください。
先ほどのアカウント設定画面のパスワードポリシー欄が更新されていれば、設定は完了です。
2.3.3 IAMグループの作成
IAMでは、IAMポリシーという権限をユーザーやリソースに付与することで、リソースの閲覧・操作・削除などの権限を与えることができます。
IAMポリシーはIAMユーザーに直接付与することも可能ですが、複数のユーザーにそれぞれ設定するのは煩雑です。
そこで、IAMポリシーを設定したIAMグループを設定し、IAMグループにIAMユーザーを所属させることで、必要な権限をユーザーに付与します。
AWSの設計原則では、各ユーザーに業務上必要な最低限の権限のみを付与し、それ以外の操作を禁止することが強く推奨されています。
これを「最小権限の原則(Principle of Least Privilege)」と呼びます。
しかし、AWSアカウントを作成した直後の段階では、特定のサービスに限定した権限では、インフラ構築や設定変更自体がスムーズに行えません。
そこで本記事では、ルートユーザーの代わりとして、管理者権限(AdministratorAccess)を持つグループを作成します。
これにより、万が一の誤操作や漏洩のリスクをルートユーザーから切り離します。
まず、IAMダッシュボード左側の「ユーザーグループ」をクリックしてください。
ユーザーグループの画面が表示されるので、「グループを作成」ボタンをクリックしてください。
ユーザーグループを作成の画面が表示されます。
まず、「グループ名に名前を付ける」欄で、任意のグループ名を指定してください。
次に、IAMグループに付与する権限(IAMポリシー)を選択します。
今回は、AWSが管理するAWS管理ポリシーの一つ「AdministratorAccess」を選択してください。
具体的な権限内容は、JSONドキュメントで記載されています。
JSONドキュメントを確認する場合は、IAMポリシー名をクリック後、「ポリシーのバージョン」の欄の「+」アイコンをクリックしてください。
JSONドキュメントの詳細が表示されます。
ワイルドカード「*」はすべてを対象とするという意味であるため、このIAMポリシーはすべてのリソース(Resource)のすべての操作(Action)が許可(Allow)されていることがわかります。
先ほどの「ユーザーグループを作成画面」に戻り、「AdministratorAccess」を選択して、「ユーザーグループを作成」をクリックしてください。
先ほどのユーザーグループ画面に、新しいグループ名が追加されていれば、作業は完了です。
2.3.4 IAMユーザーの作成
次に、作業用のIAMユーザーを作成し、先ほど作成したIAMグループに所属させます。
IAMダッシュボード左側の「ユーザー」をクリックしてください。
ユーザー画面が表示されます。
ユーザー画面の「ユーザーを作成」ボタンをクリックしてください。
ユーザーの詳細を指定画面が表示されます。
ユーザー名欄に任意のユーザー名を指定してください。
「AWSマネジメントコンソールへのユーザーアクセスを提供する」にチェックが入っていることを確認してください。
コンソールパスワードとは、AWSマネジメントコンソールでログインする際に必要なパスワードのことです。
パスワードの設定方法は、「自動生成」と「カスタムパスワードを指定する」の2種類の方法があります。
どちらの設定方法を選んでも、「ユーザーは次回のサインイン時に新しいパスワードを生成する必要があります」にチェックを入れることが推奨されています。
「ユーザーは次回のサインイン時に新しいパスワードを生成する必要があります」は、初回ログイン時にパスワード変更を強制する指示です。
なぜ初回ログイン時にパスワードを変更する必要があるかというと、それは、AWSにおいては、パスワードは「利用するユーザー」のみが知っているべきだというルールがあるからです。
企業など複数人でAWSを利用する場合、IAMユーザーを作成している人物と、実際に作成されたIAMユーザーを利用する人物が別であるケースはよく見られます(管理者ユーザーが、新しく運用チームに入ったスタッフのためにIAMユーザーを作成するなど)
この場合、利用する人物以外に、ユーザーを作成した人物もパスワードを把握しているうえ、利用する人物にパスワードを知らせる経路上で他の第三者がパスワードを閲覧してしまうセキュリティ上のリスクも存在します。
複数名がパスワードを知っているとなると、いざ作成されたIAMユーザーでトラブルが発生した場合に、その責任の所在が明確にできません。
利用者以外にパスワードを知っている人物がいるという状態は、セキュリティホールとみなされるのです。
そのため、IAMユーザーを利用する場合、初回ログイン時に利用者がパスワードを再設定することで、利用者のみがパスワードを知っている状態にします。
これにより、IAMユーザーでトラブルがあった際も、責任の所在が明確になります。
企業など、複数人でAWSサービスを利用する場合は、「ユーザーは次回のサインイン時に新しいパスワードを生成する必要があります」にチェックを入れることを強く勧めます。
IAMユーザー作成に、話を戻します。
ユーザーの詳細が入力出来たら、「次へ」ボタンをクリックしてください。
許可の設定画面が表示されます。
許可のオプション欄で「ユーザーをグループに追加」にチェックを入れてください。
ユーザーグループが表示されます。
ユーザーグループの中から、先ほど作成したIAMグループを選択してください。
「次へ」ボタンをクリックしてください。
選択内容の確認画面が表示されます。
内容を確認し、問題なければ、「ユーザーの作成」ボタンをクリックしてください。
パスワードを取得画面が表示されます。
表示されているコンソールサインインURL・ユーザー名・コンソールパスワードは、初回ログイン時に必要ですので、必ず記録してください。
コンソールパスワードを表示に変更して書き留めるか、「.csvファイルをダウンロード」ボタンをクリックし、CSVファイルをダウンロードしてください。
情報の取得が完了したら、「閉じる」ボタンをクリックしてください。
ユーザー画面に、先ほど作成したIAMユーザーが表示されていれば、作業は完了です。
2.3.5. IAMユーザーの多要素認証の設定
次に、作成したIAMユーザーに多要素認証を設定します。
IAMダッシュボード左側の「ユーザー」をクリックしてください。
ユーザー画面が表示されます。
作成したIAMユーザー名をクリックしてください。
ユーザー情報が表示されます。
概要欄の「コンソールを通じたアクセス」項目が「MFAなしで有効化」となっています。
「MFAなしで有効化」をクリックしてください。
「MFAを有効化」ボタンが表示されるので、クリックしてください。
ルートユーザーでの設定と手順は同様ですので、IAMユーザーでMFAの設定を行ってください。
2.3.6. IAMユーザー/ロールの請求情報へのアクセス許可
最後に、IAMユーザーやIAMロールでも請求情報が閲覧できるようにアクセス許可を出します。
デフォルトでは、請求情報はルートユーザーのみが閲覧できるようになっています。
しかし、請求情報を確認するたびにルートユーザーへ切り替えるのは、煩雑です。
そこで、IAMユーザーやIAMロールから請求情報にアクセスできるように事前に許可を付与します。
手順を説明します。
まず、マネジメントコンソール右上の、ルートユーザー名をクリックしてください。
ステータス画面が表示されます。
ステータス画面の「アカウント」項目をクリックしてください。
請求とコスト管理のアカウント画面が表示されます。
アカウント画面をスクロールすると、「IAMユーザーおよびロールによる請求情報へのアクセス」欄があります。
「IAMユーザーおよびロールによる請求情報へのアクセス」の「編集」ボタンをクリックしてください。
「IAMアクセスのアクティブ化」という項目にチェックを入れて、「更新」ボタンを押してください。
画面に「有効化済み」と表示されれば、作業は完了です。
以上で、ルートユーザーでの設定も完了です。
2.3.7. IAMユーザーで初回ログイン
ルートユーザーでの作業が終わったので、作成したIAMユーザーでログインしてみましょう。
ユーザー作成時に記録した、コンソールサインインURL・ユーザー名・コンソールパスワードを確認できる状態にして、ルートユーザーをログアウトしてください。
マネジメントコンソールから、今度はIAMユーザーでログインします。
ルートユーザーのログイン画面とIAMユーザーのログイン画面は、URLが異なります。
コンソールサインインURLから、IAMユーザーのログイン画面に移動してください。
ログイン画面が表示されたら、ユーザー名とコンソールパスワードを入力し、ログインしてください。
MFA認証を設定した場合は、ログイン時にMFA認証が求められます。
初回ログイン時にパスワードの変更にチェックを入れた場合は、パスワードの変更画面が表示されます。
コンソールのホーム画面が表示されれば、無事IAMユーザーでログインが完了しました。
記事は以上です。
次回後編では、請求情報のアラーム設定、履歴の取得、脅威検知に関する初期設定をまとめる予定です。
最後までお読みいただき、ありがとうございました。
参考情報一覧
この記事は以下の情報を参考にして執筆しました。
- [AWS Hands-on for Beginners - Security #1 AWSアカウント作成後すぐやるセキュリティ対策] (参照 2026-03-23)
- [AWS 認定資格試験テキスト AWS認定 ソリューション アーキテクト - アソシエイト 改定第3版]
- [徹底攻略AWS認定ソリューション アーキテクト - アソシエイト 教科書 第3版]
- IAM Identity Center で使用可能な MFA タイプ (参照 2026-03-23)













