Amazon EventBridge ターゲット - Amazon EventBridge

Amazon EventBridge ターゲット

ターゲットとは、ルールに定義されたイベントパターンにイベントがマッチしたときに、EventBridge がイベントを送信する先のリソースまたはエンドポイントです。ルールはイベントデータを処理し、関連情報をターゲットに送信します。イベントデータをターゲットに配信するには、EventBridge がターゲットリソースにアクセスする許可が必要です。ルールごとに最大 5 つのターゲットを定義できます。

ルールにターゲットを追加し、その直後にルールが実行されると、新しいターゲットまたは更新されたターゲットがすぐに呼び出されない場合があります。変更が有効になるまで、しばらくお待ちください。

次のビデオでは、ターゲットの基本について説明します。

EventBridge コンソールで利用可能なターゲット

EventBridge コンソールでは、イベントに以下のターゲットを設定できます。

ターゲットパラメータ

ターゲットを設定するときに、特定の AWS サービスに対して指定できる追加パラメータがあります。これには以下が含まれます。

  • BatchParameters (AWS Batch ジョブ)

  • EcsParameters (Amazon ECS タスク

  • HttpParameters(Amazon API Gateway およびサードパーティ APIDestination エンドポイント)

  • KinesisParameters (Amazon Kinesis streams)

  • RedshiftDataParameters (Amazon Redshift データ API クラスター)

  • RunCommandParameters (Amazon EC2 インスタンスコマンド)

  • SageMakerPipelineParameters (Amazon SageMaker モデル構築パイプライン)

  • SqsParameters (Amazon SQS キュー)

一部のターゲットパラメータでは、オプションの動的 JSON パス構文がサポートされています。この構文では、静的値の代わりに JSON パスを指定できます (例えば、$.detail.state)。このようなパスは、実行時に、指定されたパスにあるイベントペイロード自体のデータで動的に置き換えられます。動的パラメータの JSON パスでサポートされている構文は、入力を変換する場合と同じです。詳細については、「Amazon EventBridge ターゲット入力の変換」を参照してください。

動的構文は、これらのパラメータのすべての非列挙型フィールドで使用できます。

  • EcsParameters

  • HttpParameters (HeaderParameters を除く)

  • RedshiftDataParameters

  • SageMakerPipelineParameters

許可

所有するリソースで API をコールするには、EventBridge に適切な許可が必要です。AWS Lambda および Amazon SNS リソースの場合、EventBridge はリソースベースのポリシーを使用します。EC2 インスタンス、Kinesis データストリーム、および Step Functions ステートマシンの場合、EventBridge は、PutTargetsRoleARN パラメータで指定する IAM ロールを使用します。構成された IAM 認可で API Gateway REST エンドポイントを呼び出すことができますが、認可を構成していない場合、ロールはオプションです。詳細については、「Amazon EventBridge と AWS Identity and Access Management」を参照してください。

別のアカウントが同じリージョンにあって、許可を付与されている場合は、そのアカウントにイベントを送信できます。詳細については、「AWS アカウント間での Amazon EventBridge イベントの送受信」を参照してください。

ターゲットが暗号化されている場合は、KMS キーポリシーに次のセクションを含める必要があります。

{ "Sid": "Allow EventBridge to use the key", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*" }