本文へスキップ
BecomeCoder

AWSコース · 第2章 アカウントと操作の基礎 · レッスン8

AWSアカウントとルートユーザー

導入

AWSを使い始めるときにまず作る「AWSアカウント」には、実は絶大な権限を持つ特別なユーザーが1つだけ最初から存在します。これを普段使いしないことが、AWSの鉄則です。

説明

AWSアカウントは、AWSとの契約・請求(支払い)の単位です。アカウントを作成すると、その中にAWSの全リソースを扱えます。

アカウント作成時に自動的にできあがるのがルートユーザーです。ルートユーザーは、アカウント作成に使ったメールアドレスとパスワードでサインインし、請求情報の変更やアカウントの解約など、他のどのユーザーにもできない特別な操作まで含めて全権限を持っています。

ルートユーザー 全権限・請求変更も可 日常利用は こちらへ → IAMユーザー 必要な権限だけ付与

だからこそAWSは、ルートユーザーは初期設定以外では使わず、日常の作業は権限を限定した「IAMユーザー」や「IAMロール」で行うことを強く推奨しています(IAMの詳細は第7章で扱います)。ルートユーザーを守るために最初にやるべきことは、次の2つです。

  • 多要素認証(MFA)を有効化する … パスワードに加えて、スマートフォンアプリ等で生成する確認コードも要求することで、パスワード漏えいだけでは侵入されないようにする。
  • 強力なパスワードを設定し、アクセスキーを作らない … ルートユーザーのアクセスキー(プログラムからの操作用の鍵)は原則作成しない。

とはいえ、ルートユーザーを完全に封印できるわけではありません。ルートユーザーでしかできない操作がいくつかあり、そのときだけ金庫から鍵を出して使います。試験でもよく問われるので、代表例を押さえましょう。

  • AWSアカウントの解約(クローズ)
  • サポートプランの変更(Developer・Business などへの変更)
  • アカウント名・ルートユーザーのメールアドレス・パスワードの変更
  • IAMユーザーに請求情報へのアクセスを許可する設定
  • S3バケットのMFA Delete の有効化、一部のリージョンの有効化・無効化

具体例

3人のスタートアップが、ルートユーザーのメールとパスワードをチャットで共有し、全員がそれでログインして作業していました。ある日、メンバーのPCがマルウェアに感染し、その認証情報が流出。気づいたときには高性能なサーバーが大量に不正起動され、数十万円の請求が発生していました。ルートには全権限があるため、攻撃者はやりたい放題だったのです。

正しい構えはこうです。

  1. ルートユーザーにMFAを設定し、パスワードは金庫にしまうように普段は一切使わない
  2. メンバー3人には、それぞれ必要な権限だけを持つIAMユーザーを発行する
  3. もし1人分の鍵が漏れても、その人の権限の範囲しか被害が及ばず、すぐ無効化できる

「全権の鍵を全員で共有」から「限定した鍵を1人1本」へ——これがルートユーザーを守る第一歩です。

読んでみよう

「ルートユーザー=金庫の鍵、IAMユーザー=日々使う社員証」とイメージすると、なぜ使い分けるべきかが直感的に分かります。

次のレッスンへ →