Qraft(クラフト) 資格・学習クイズアプリ

AWS Certified Solutions Architect Associate(SAA-C03) 練習問題 2:3層構造でのセキュリティグループの最小権限原則

Webアプリケーションを「Webサーバー層(パブリックサブネット)」「アプリケーション層(プライベートサブネット)」「データベース層(プライベートサブネット)」の3層構造で構築する場合、最小権限原則に基づくセキュリティグループの設定として最も適切なものはどれか。

  1. データベース層のセキュリティグループのインバウンドルールで、ソースに「0.0.0.0/0」を指定してポート3306を許可する。
  2. アプリケーション層のセキュリティグループのインバウンドルールで、ソースにWebサーバー層のセキュリティグループIDを指定してポートを許可する。
  3. 全層のセキュリティグループのアウトバウンドルールで、すべてのポートを拒否してセキュリティを高める。
  4. WebサーバーからDBへの直接アクセスを許可し、アプリケーション層を経由させないことで処理を効率化する。
  5. ネットワークACL(NACL)はセキュリティグループと同様にステートフルであるため、インバウンドルールを設定すれば応答トラフィックのアウトバウンドルールを個別に設定しなくてもよい。

Qraftユーザーの成績:難易度 Cランク(レーティング1186)・正答率 62%(18/29回正解)
レーティングは解いた人の実力と正誤から算出する難しさ(初期値1200)。ランクはその全問題中の順位(S+が最難関、F-が最易)

正解と解説を見る
正解:アプリケーション層のセキュリティグループのインバウンドルールで、ソースにWebサーバー層のセキュリティグループIDを指定してポートを許可する。

3層構造(Three-tier Architecture)では、各層が自分のすぐ上の層からのトラフィックのみを受け付けるようにセキュリティグループを設定するのが最小権限原則の考え方です。

正しいのは「アプリケーション層のインバウンドルールで、ソースにWebサーバー層のセキュリティグループIDを指定する」という方法です。IPアドレス(CIDRブロック)ではなくセキュリティグループIDをソースに指定することで、特定のセキュリティグループに属するリソースからのトラフィックのみに絞ることができます。同様に、データベース層はアプリケーション層のセキュリティグループIDのみを許可します。「0.0.0.0/0」を指定するとインターネット全体からのアクセスを許可してしまうため誤りです。アウトバウンドを全拒否すると正常な通信もできなくなります。WebサーバーからDBへの直接アクセスは、アプリケーション層の役割を排除しており設計として誤りです。

← 前の問題問題一覧次の問題 →
アプリで解いてレーティングを上げる(無料・登録不要)