AWS SAAで頻出のパターン問題です。
早速問題を見ていきましょう
【問題】
あなたはソリューションアーキテクトとして、Amazon S3バケットを利用したコンテンツ共有の仕組みを構築しています。このコンテンツ共有を利用するユーザーからのアクセスに限定する必要があり、インスタンスのIPアドレスからのみオブジェクトにアクセスできるように設定することが要件となっています。
この要件を達成するためのソリューションを選択してください。(2つ選択してください。)
選択肢
- Amazon CloudFrontにおいてOACを作成して、Amazon S3バケットポリシーにOAIのみにアクセス許可を設定する。
- S3に特定IPアドレスへのアクセスに限定したセキュリティグループを設定する。
- CloudFrontにおける Referer制限を実施する。
- 事前署名付きURLを利用したコンテンツ共有を実装する。
- CloudFrontを設定してWAFの IP ホワイトリストを実施する。
この問題のポイントは「インスタンスのIPからのみアクセス」ということ
ここから先は正解と解説が載っているのでまずは何が正解か考えて見ましょう。
【正解】
- Amazon CloudFrontにおいてOACを作成して、Amazon S3バケットポリシーにOAIのみにアクセス許可を設定する。
- CloudFrontを設定してWAFの IP ホワイトリストを実施する。
なぜこの2つなのか?
ポイントは 2段階防御構成 です。
【許可IPのみ】
EC2インスタンス
│
▼
CloudFront
├─ WAF(IPホワイトリスト)
│ └ 許可IPのみ通過
│
└─ OAC
│
▼
S3(非公開)✅ OAIの役割(S3を非公開化)
OAC(Origin Access Control)は、
「S3をCloudFront経由のみアクセス可能にする仕組み」
です。
バケットポリシー例:
Principal: OACのみ許可
Effect: Allowこれにより:
・❌ 直接S3 URLアクセス不可
・❌ パブリックアクセス不可
・✅ CloudFront経由のみ可能
✅ WAF IPホワイトリストの役割
CloudFrontにWAF Web ACLを関連付けます。
IP Set: 203.0.113.10 のみ許可
これにより:
・❌ それ以外のIPはCloudFrontでブロック
・✅ 指定インスタンスIPのみ通過
✔ 結果
| レイヤ | 防御内容 |
|---|---|
| S3 | OACで非公開 ※旧式ではOAIを指定する問題も有り |
| CloudFront | WAFでIP制限 |
→ 要件「インスタンスIPからのみアクセス」を満たす
❌ なぜ他は不正解?
② S3にセキュリティグループを設定
S3はVPC内リソースではありません。
S3にセキュリティグループは設定できません。
即除外。
③ Referer制限
RefererはHTTPヘッダです。
curl -H "Referer: fake"のように簡単に偽装可能。
→IP制限にならないため不適切。
④ 事前署名付きURL
※今回の間違えやすいポイント
仕組み:
・URLを知っていれば誰でもアクセス可能
・有効期限内はどのIPからもアクセス可能
問題の要件は:「インスタンスIPからのみ」
→つまりアクセス元IPで制御する必要があります。
署名付きURLは:
✔ 一時共有向け
✖ IP限定にはならない
→そのため不正解。
🎯 試験での見抜き方
問題文に
- 「特定IPからのみ」
- 「送信元IPで制御」
- 「ホワイトリスト」
とあれば👉 WAF
さらに
- 「S3を非公開化」
- 「CloudFront経由のみ」
とあれば👉 OAI
この2つをセットで選ぶ。
📌 まとめ
| 構成 | 役割 |
|---|---|
| OAI | S3をCloudFront経由のみにする |
| WAF | IPホワイトリスト制御 |
他にもAWS SAA 対策ブログを執筆しているので参考にしてみてください。
ここまで読んでいただき、ありがとうございます。もしこの記事の技術や考え方に少しでも興味を持っていただけたら、ネクストのエンジニアと気軽に話してみませんか。
- 選考ではありません
- 履歴書不要
- 技術の話が中心
- 所要時間30分程度
- オンラインOK