【正解】B
【0からの解説】
Amazon Cognito ユーザープールには「Lambda トリガー」という拡張ポイントがあり、認証フローの特定タイミングで自前の Lambda 関数を自動実行できます。「ポスト認証 (Post authentication)」トリガーは、ユーザーのサインインが成功した直後に呼び出されます。ここで Amazon SES を使ってメールを送る Lambda を実行すれば、ログインのたびに自動でログイン通知メールを送れます。Cognito の標準機能だけで完結し、クライアント改修や別系統のログ処理が不要なため、最も運用効率が高くなります。
【誤りの選択肢】
A:API Gateway 経由でクライアント側から通知 API を呼ぶ方式は、クライアント実装に依存し、クライアントが呼ばなければ通知が漏れます。サーバー側で確実にトリガーする B より信頼性・効率で劣ります。
C:CloudWatch Logs サブスクリプションフィルターでログイン成功を検知する方式は、ログ出力前提の間接的な仕組みで、フィルター設計やログ形式への依存が生じ、Cognito の専用トリガーを使う B より複雑です。
D:Kinesis Data Firehose にログをストリーミングして Lambda で処理する構成は、ストリーミング基盤の追加・運用が必要でオーバーエンジニアリングであり、運用効率の観点で B に劣ります。
【参考】
Cognito ユーザープールの Lambda トリガーポスト認証 Lambda トリガー