Q93 — AWS DVA-C02 第1章
第 93/100 問 | ← 第1章
ある企業が、Amazon Cognitoユーザープールを認証システムとして使用するアプリケーションを運用しています。この企業は、ユーザー記録へのアクセスを保護する必要があります。すでに多要素認証(MFA)が有効化されています。さらに、ユーザーが毎回ログインする際に、メールでログインアクティビティ通知を送信したいと考えています。この要件を満たす最も効率的な解決策は何ですか?
- A. Amazon Simple Email Service(Amazon SES)を用いてメール通知を送信するAWS Lambda関数を作成します。この関数を呼び出すためのAmazon API Gateway APIを追加します。クライアント側でログイン確認を受け取った後にAPIを呼び出します。
- B. Amazon Simple Email Service(Amazon SES)を用いてメール通知を送信するAWS Lambda関数を作成します。この関数にAmazon Cognitoの認証後Lambdaトリガーを追加します。 ✓
- C. Amazon Simple Email Service(Amazon SES)を用いてメール通知を送信するAWS Lambda関数を作成します。Amazon CloudWatch Logsのログサブスクリプションフィルターを作成し、ログインステータスに基づいて関数を呼び出します。
- D. Amazon Cognitoを設定して、すべてのログをAmazon Kinesis Data Firehoseにストリーミングします。ストリーミングされたログを処理し、各ユーザーのログインステータスに基づいてメール通知を送信するAWS Lambda関数を作成します。
正解: B. Amazon Simple Email Service(Amazon SES)を用いてメール通知を送信するAWS Lambda関数を作成します。この関数にAmazon Cognitoの認証後Lambdaトリガーを追加します。
解説
Amazon Cognitoでは、ユーザーのログインなどの特定イベントに対して直接Lambdaトリガーを設定できます。これは、ユーザー操作時に自動的にトリガーされるため、最も直接的かつ効率的です。選択肢Bは、ユーザーのログイン時にCognitoトリガーを通じてLambda関数を呼び出し、メール通知を送信するという要件を正確に満たします。これによりリアルタイム性が保たれ、追加のAPI呼び出しやログサブスクリプションといった複雑なアーキテクチャを回避できます。したがって、この要件を満たす最も効率的な解決策は選択肢Bです。