Amazon EventBridge ターゲット
ターゲットとは、ルールに定義されたイベントパターンにイベントがマッチしたときに、EventBridge がイベントを送信する先のリソースまたはエンドポイントです。ルールはイベントデータを処理し、関連情報をターゲットに送信します。イベントデータをターゲットに配信するには、EventBridge がターゲットリソースにアクセスする許可が必要です。ルールごとに最大 5 つのターゲットを定義できます。
ルールにターゲットを追加し、その直後にルールが実行されると、新しいターゲットまたは更新されたターゲットがすぐに呼び出されない場合があります。変更が有効になるまで、しばらくお待ちください。
次のビデオでは、ターゲットの基本について説明します。
EventBridge コンソールで利用可能なターゲット
EventBridge コンソールでは、イベントに以下のターゲットを設定できます。
-
バッチジョブのキュー
-
CloudWatch ロググループ
-
CodeBuild プロジェクト
-
CodePipeline
-
EC2
CreateSnapshot
API コール -
EC2 Image Builder
-
EC2
RebootInstances
API コール -
EC2
StopInstances
API コール -
EC2
TerminateInstances
API コール -
ECS タスク
-
Firehose 配信ストリーム
-
Glue ワークフロー
-
Inspector 評価テンプレート
-
Kinesis ストリーミング
-
Lambda 関数
-
Redshift クラスター
-
SageMaker パイプライン
-
SNS トピック
-
SQS キュー
-
Step Functions ステートマシン
-
Systems Manager Automation
-
Systems Manager OpsItem
-
Systems Manager Run Command
ターゲットパラメータ
ターゲットを設定するときに、特定の 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 は、PutTargets
の RoleARN
パラメータで指定する 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": "*" }