S3イベントによってトリガーされるLambda関数があり、特定のバケットに新規または変更されたオブジェクトがあるたびに実行される必要があります。この関数は、イベントからS3バケット名とオブジェクトキーを読み取り、オブジェクトの内容を取得して解析し、結果をDynamoDBテーブルに書き込みます。関数の実行ロールには、バケットを読み取り、DynamoDBに書き込むための権限がありますが、テスト中にオブジェクトが追加または変更されても関数が実行されません。この問題を解決するにはどうすればよいですか?
解答を選択
オプションをタップして解答を確認してください。
正解: 指定されたS3バケットに対してAmazon S3が関数を呼び出すことを許可するリソースベースのポリシーをLambda関数に追加します。.
これが解答である理由
Lambda関数がS3イベントによってトリガーされるには、S3サービスがLambda関数を呼び出す許可が必要です。これは、Lambda関数のリソースベースのポリシーにS3からの呼び出しを許可するステートメントを追加することで実現されます。このポリシーがないと、S3はイベントを送信してもLambda関数を呼び出すことができません。 メモリの増加や/tmpスペースの増加は、関数が実行された後の処理能力に関するものであり、関数が実行されないという初期の問題とは関係ありません。OnFailure送信先の設定も、関数が実行された後のエラー処理に関するものであり、トリガーの問題を解決しません。
試験に合格 — 終わりのない解答探しなしで
この試験のすべての検証済み問題と解説を1か所で入手し、準備時間を大幅に節約しましょう。1,000以上の認定 · 20以上の言語 · 無料で開始。
試験に早く合格する → カード不要