ある企業が、VPC 内のプライベートサブネットに配置した EC2 インスタンスから Amazon S3 へのアクセスを必要としている。インターネットゲートウェイや NAT ゲートウェイを経由させず、AWS のプライベートネットワーク内だけで通信を完結させたい。また、S3 バケットポリシーで特定の VPC からのアクセスのみを許可する予定である。最も適切なソリューションはどれか。
- A. EC2 インスタンスにパブリック IP を割り当て、インターネット経由で S3 に接続する。
- B. S3 用の Gateway 型 VPC エンドポイントを VPC に作成し、ルートテーブルにエンドポイントへのルートを追加する。
- C. プライベートサブネットに NAT ゲートウェイを配置し、EC2 から S3 へのトラフィックをルーティングする。
- D. AWS PrivateLink を使用して Interface 型 VPC エンドポイントを S3 用に作成し、時間課金の通信料を最小化する。
解答と解説を見る
正解: B
Amazon S3 用の Gateway 型 VPC エンドポイントは、追加コストなしで VPC 内から S3 へのプライベート通信を実現する。ルートテーブルにエンドポイントへのルートを追加するだけで設定でき、S3 バケットポリシーの aws:sourceVpce 条件キーで特定の VPC エンドポイントからのアクセスのみを許可することもできる。インターネットを経由しないため、NAT ゲートウェイのコストも発生しない。選択肢Cは NAT ゲートウェイ経由となりインターネットを経由する可能性があるうえ、NAT ゲートウェイの利用料金も発生する。選択肢Aはパブリック IP を使いインターネット経由でアクセスするため、プライベートネットワーク内で完結させるという要件を満たさない。選択肢Dの Interface 型エンドポイントは時間課金が発生し、S3 には無料の Gateway 型エンドポイントが存在するため、コスト面で最適ではない。
📚 関連サービスの解説: Amazon S3 ・ AWS PrivateLink/VPCエンドポイント