保存時と転送時のデータ暗号化の実装
学習塾向けに成績管理 SaaS を提供する企業が、Application Load Balancer の背後に複数の Amazon EC2 インスタンスを配置し、答案画像を Amazon S3 バケットに、アプリケーションの作業データを Amazon EBS ボリュームに保存しています。個人情報保護に関する社内規程が改定され、外部監査で「保存されているデータと、ネットワークを流れるデータの双方を暗号化していること」を証明できなければなりません。アクセス制御はすでに整備済みで、今回は暗号化の要件のみを追加で満たす必要があります。
要件を満たす対策の組み合わせはどれですか。2 つ選択してください。
複数選択問題です (正解 2 つ)。選んでから判定してください。
解説を読む(正解: A、B)
データ保護の要件は「転送中の暗号化 (encryption in transit)」と「保管時の暗号化 (encryption at rest)」の 2 つに分けて対策を考えます。転送中の暗号化は、AWS Certificate Manager (ACM) で発行した TLS 証明書を Application Load Balancer の HTTPS リスナーに関連付けることで実現します。ACM の証明書は無料で発行され自動更新されるため、証明書の失効による障害も避けられます。保管時の暗号化は AWS KMS を利用します。S3 バケットに SSE-KMS のデフォルト暗号化を設定すればアップロードされる答案画像は自動的に暗号化され、EBS ボリュームの暗号化を有効にすればボリューム本体・スナップショット・インスタンスとの間の I/O がすべて暗号化されます。カスタマー管理キーを使えばキーポリシーによる利用者の制御とローテーション、CloudTrail による利用監査も可能になり、監査要件への説明力が高まります。したがって A と B が正解です。選択肢 C は誤りです。IAM ポリシーによる最小権限の適用は誰がデータにアクセスできるかを制御する認可の仕組みであり、データそのものを暗号化するものではありません。設問でもアクセス制御は整備済みと述べられています。選択肢 D も誤りです。セキュリティグループは通信元を絞り込むステートフルなファイアウォールであり、通信内容を暗号化する機能は持ちません。ネットワーク境界の防御と暗号化は別の対策である点を区別する必要があります。
ALB での TLS 証明書の調達と自動更新
ある企業は、東京リージョンの Application Load Balancer で公開する Web サイトを HTTPS 化することになりました。運用チームは、証明書の有効期限切れによる障害を過去に経験しているため、追加費用なしで自動更新される証明書を使いたいと考えています。ドメインは Amazon Route 53 でホストされています。ソリューションアーキテクトが推奨すべき構成はどれですか。
解説を読む(正解: A)
AWS Certificate Manager (ACM) は、ALB、CloudFront、API Gateway といった統合サービスで利用するパブリック TLS 証明書を無料で発行し、有効期限が近づくと自動的に更新するマネージドサービスです。ドメインの所有確認に DNS 検証を選び、Route 53 に検証用 CNAME レコードを作成しておけば、更新時の検証も自動で行われるため、証明書の期限切れによる障害を構造的に防げます。ACM の証明書はリージョナルリソースであり、ALB に関連付けるには ALB と同じリージョン、この場合は東京リージョンで発行する必要があります。
したがって、東京リージョンで DNS 検証のパブリック証明書を発行し、ALB の HTTPS リスナーに関連付ける A が正解です。
B は購入費用が発生するうえ、手動更新の運用が残り、まさに過去の障害原因を再現します。また ALB を TCP パススルーにすると、レイヤー 7 のルーティングやヘッダー挿入といった ALB の利点も失われます。C は自己署名証明書であるため、一般利用者のブラウザで信頼されず警告が表示され、公開 Web サイトには使えません。D は ACM 証明書のリージョン制約に反する誤りで、us-east-1 の証明書を関連付けられるのは CloudFront などのグローバルサービスに限られ、東京リージョンの ALB のリスナーには選択できません。
サーバーレス REST API を独自ドメインで安全に公開する構成
会員制フィットネスアプリを開発しているスタートアップが、サーバーレスの REST API を構築しています。API は AWS Lambda 関数で実装され、会員が入力したトレーニング記録を受け取って Amazon Aurora PostgreSQL に保存します。同社は Amazon Route 53 で自社ドメインを管理しており、会員がインターネットから HTTPS で安全にアクセスできるよう、自社ドメイン配下の URL で API を公開したいと考えています。運用の手間とコストは最小限に抑える必要があります。この要件を満たすために必要な手順の組み合わせはどれですか。3 つ選択してください。
複数選択問題です (正解 3 つ)。選んでから判定してください。
解説を読む(正解: A、C、D)
サーバーレス API を独自ドメインで公開する場合、Amazon API Gateway を HTTPS のフロントエンドとして置き、その背後で AWS Lambda にリクエストを転送する構成が標準です。API Gateway はリクエスト単位の従量課金で、スロットリング、認可、ステージ管理、カスタムドメイン対応といった機能を追加のサーバーなしで提供するため、運用の手間とコストを最小化できます。
必要な手順は 3 つです。まず Lambda 関数を作成し、API Gateway の REST API と Lambda プロキシ統合で結び付けます (選択肢 A)。次に AWS Certificate Manager でドメインのパブリック証明書を無料で発行し、API Gateway のカスタムドメイン名機能に自社ドメインを登録してその証明書をマッピングします (選択肢 C)。最後に Route 53 のホストゾーンで、API Gateway が払い出すカスタムドメインのターゲットを指すエイリアスレコードを作成し、名前解決を成立させます (選択肢 D)。
B は誤りです。カスタムドメイン名と証明書の紐付けは Route 53 ではなく API Gateway 側で行う設定であり、Route 53 のホストゾーンには証明書をマッピングする項目がありません。E は誤りです。Lambda 関数 URL は既定のドメインしか払い出せず、独自ドメインでの公開やスロットリングなどの制御には対応していないため要件を満たしません。F も誤りです。Route 53 のエイリアスレコードは Lambda 関数のエンドポイントをターゲットに指定できず、Lambda 関数 URL を独自ドメインで公開するには CloudFront などを別途挟む必要があり、最小限の労力という条件に反します。