Q18 — AWS SAA-C03 第16章

第 18/100 問 | ← 第16章

Q1218. ある企業では、VPC内のプライベートサブネットでAWS Lambda関数を実行し、アプリケーションロジックを処理しています。これらのLambda関数はパブリックインターネットへのアクセスを許可してはならず、またすべてのデータ通信はプライベートネットワーク内に留める必要があります。新たな要件として、このアプリケーションロジックがAmazon DynamoDBテーブルにアクセスする必要が生じました。この要件を満たす最も安全な方法はどれですか?

正解: B. DynamoDBへのアクセスを提供するため、ゲートウェイタイプのVPCエンドポイントを作成する。

解説

Lambda関数がVPC内のプライベートサブネットで実行され、パブリックインターネットへのアクセスを許可せず、かつDynamoDBとのすべての通信をプライベートネットワーク内に留めつつ、DynamoDBテーブルにアクセスできるようにするには、最も安全な方法は以下の通りです: B. DynamoDBへのアクセスを提供するため、ゲートウェイタイプのVPCエンドポイントを作成する。 【分析】 ・DynamoDB向けゲートウェイVPCエンドポイント:  機能: DynamoDB向けのゲートウェイVPCエンドポイントを利用すると、インターネットゲートウェイ、NATデバイス、VPN接続、またはAWS Direct Connect接続を経由せずに、VPCからDynamoDBへアクセスできます。VPCとDynamoDB間のトラフィックはAWSの内部ネットワーク上を流れ、セキュリティおよびコンプライアンス要件を強化します。  安全性: このエンドポイントを使用することで、Lambda関数とDynamoDB間のすべての通信がパブリックインターネットを経由せず、プライベートネットワーク内に完全に閉じた状態で行われます。これは、本要件を満たす最も安全な方法です。  設定: ゲートウェイVPCエンドポイントの作成は、AWSマネジメントコンソール、AWS CLI、またはAWS SDKを用いて容易に行えます。作成後、対象のプライベートサブネットのルートテーブルを更新し、DynamoDB宛てのトラフィックをこのエンドポイント経由でルーティングするよう設定します。 ・同一VPC内にDynamoDBテーブルを作成(選択肢A):  不適切: DynamoDBは完全マネージド型のNoSQLデータベースサービスであり、お客様のVPCの外部で動作します。したがって、DynamoDBテーブルをVPC内に展開することは技術的に不可能です。 ・ネットワークACLでVPCからのみアクセスを許可(選択肢C):  不十分: ネットワークACLはサブネットレベルで動作し、サブネット単位の基本的なトラフィック制御を提供しますが、DynamoDBへのアクセスをパブリックインターネット経由なしで実現する手段ではありません。ネットワークACL単体では、DynamoDBとの通信をプライベートネットワーク内に留めることはできません。 ・セキュリティグループでVPCからのみアクセスを許可(選択肢D):  不十分: セキュリティグループはインスタンス(またはLambda関数)レベルで状態を保持するファイアウォール機能を提供しますが、これもDynamoDBへのアクセスをパブリックインターネット経由なしで実現する手段ではありません。セキュリティグループ単体では、DynamoDBとの通信をプライベートネットワーク内に留めることはできません。 以上より、DynamoDB向けのゲートウェイVPCエンドポイントを作成することが、パブリックインターネットへのアクセスを許可せず、かつすべてのデータ通信をプライベートネットワーク内に留めつつ、Lambda関数からDynamoDBに安全にアクセスするための最も安全な方法です。