Q20 — AWS DVA-C02 第3章
第 20/100 問 | ← 第3章
開発者がサーバーレスアーキテクチャを用いて、高度にセキュアな医療保健アプリケーションを構築しています。このアプリケーションは、一時データをAWS Lambda関数の/tmpストレージに書き込む必要があります。開発者は、これらのデータをどのように暗号化すべきですか?
- A. Lambda関数の設定でAWS KMSキーを有効化してAmazon EBSボリュームの暗号化を有効にし、Lambda関数にアタッチされたすべてのストレージを暗号化します。
- B. ロールおよびキーポリシーを設定してLambda関数がAWS KMSキーにアクセスできるようにします。KMSキーを使用してデータキーを生成し、/tmpストレージへの書き込み前にすべてのデータを暗号化します。 ✓
- C. OpenSSLを用いてLambda起動時に対称暗号化キーを生成し、/tmpへの書き込み前にこのキーでデータを暗号化します。
- D. ローカルのハードウェアセキュリティモジュール(HSM)でキーを生成し、Lambda関数がHSMからデータキーを要求して、すべてのリクエスト関数のデータを暗号化するために使用します。
正解: B. ロールおよびキーポリシーを設定してLambda関数がAWS KMSキーにアクセスできるようにします。KMSキーを使用してデータキーを生成し、/tmpストレージへの書き込み前にすべてのデータを暗号化します。
解説
AWS Lambda環境において、/tmpディレクトリは関数に提供される一時ストレージ領域ですが、それ自体は暗号化機能を提供しません。/tmpへの書き込みデータを暗号化するには、AWS Key Management Service(KMS)を活用してキーを管理する必要があります。具体的には、まずIAMロールとKMSキーポリシーを用いてLambda関数がKMSキーにアクセスできるよう構成し、次にKMSキーでデータキー(DataKey)を生成し、このデータキーで実際のデータを暗号化します。これによりデータの機密性が確保され、AWSのセキュリティベストプラクティスにも準拠します。したがって、正しい選択肢はBです。