DVA-C02:AWS Certified Developer - Associate AWS サービスを用いた開発 問6
AWS サービスを用いた開発/AWS Lambda のコード開発Lambda 関数から、プライベートサブネットにある RDS データベースへアクセスしたいと考えています。最も適切な方法はどれですか。
当サイトのオリジナル問題(DVA-C02:AWS Certified Developer - Associateの出題範囲「AWS サービスを用いた開発」に対応。実際の試験問題ではありません)
- ARDS をパブリックに公開し、インターネット経由で接続する
- BLambda 関数を VPC に接続(サブネットとセキュリティグループを構成)し、プライベートサブネットの RDS へ到達させる
- CLambda からは VPC 内のリソースにアクセスできないため、構成を諦める
- DRDS の接続認証情報を Lambda のコードに直接書き込む
正解:B
解説
Lambda からプライベートサブネット内の RDS へアクセスするには、Lambda 関数を VPC に接続し、適切なサブネットとセキュリティグループを構成します。これにより関数が VPC 内のネットワークに配置され、プライベートサブネットの RDS へ到達できます。認証情報はコードに直書きせず Secrets Manager 等で管理します。
選択肢ごとの解説
- A誤り。RDS のパブリック公開は、プライベート構成の要件に反し、セキュリティ上も望ましくありません。
- B正しい。Lambda を VPC に接続(サブネットとセキュリティグループを構成)すれば、プライベートサブネットの RDS へアクセスできます。
- C誤り。Lambda は VPC 接続により VPC 内リソースへアクセスできます。諦める必要はありません。
- D誤り。認証情報のコード直書きはアクセス方法の問題を解決せず、セキュリティのベストプラクティスにも反します。