AWS サービスからのイベント - Amazon EventBridge

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS サービスからのイベント

多くの AWSサービスは、 が EventBridge 受信するイベントを生成します。アカウントの AWS サービスがイベントを発行すると、アカウントのデフォルトのイベントバスに移動します。

AWS サービスからのイベント配信

イベントを生成する各AWSサービスは、ベストエフォートまたは永続的な配信試行 EventBridge としてそれらを に送信します。

  • ベストエフォート配信とは、サービスがすべてのイベントを に送信しようとしますが EventBridge、まれにイベントが配信されない場合があります。

  • 永続的な配信とは、サービスが EventBridge 少なくとも 1 回はイベントを に正常に配信しようとすることを意味します。

    EventBridge は、通常の条件下ですべての有効なイベントを受け入れます。 EventBridge サービスの中断が原因でイベントを配信できない場合は、後でAWSサービスによって最大 24 時間再試行されます。

イベントが に配信されると EventBridge、 はそれをルールと EventBridge 照合し、再試行ポリシーとイベントターゲットに指定されたデッドレターキュー (複数可) に従います。

AWS イベントを生成するサービスのリストについては、「イベントを生成する AWS サービス」を参照してください。

AWS 経由で AWS CloudTrail サービスイベントにアクセスする

AWS CloudTrail は、AWS API コールなどのイベントを自動的に記録するサービスです。からの情報を使用する EventBridge ルールを作成できます CloudTrail。の詳細については CloudTrail、「 とはAWS CloudTrail」を参照してください。

によって配信されるすべてのイベントは、 の値AWS API Call via CloudTrailとして CloudTrail を持ちますdetail-type

detail-type 値が のイベントを記録するにはAWS API Call via CloudTrail、ログ記録が有効になっている CloudTrail 証跡が必要です。

Amazon S3 CloudTrail で を使用する場合は、データイベントをログに記録する CloudTrail ように を設定する必要があります。詳細については、「S3 バケットとオブジェクトの CloudTrail イベントログ記録を有効にする」を参照してください。

AWS サービスで発生した内容は、サービス自体と EventBridge の両方で にレポートできます CloudTrail。例えば、インスタンスを開始または停止する Amazon EC2 API コールは、 を通じて EventBridge イベントだけでなく、 イベントも生成します CloudTrail。

CloudTrail は、API 呼び出し元とリソース所有者の両方が証跡を作成して Amazon S3 バケットでイベントを受信し、 を介して API 呼び出し元にイベントを配信します EventBridge。API 呼び出し元に加えてリソース所有者も、 を介してクロスアカウント API コールをモニタリングできます EventBridge。 CloudTrailと の統合 EventBridge により、イベントに応じて自動化されたルールベースのワークフローを簡単に設定できます。

あらゆる Put*Events リクエストの最大サイズが 256KB であるため、サイズが 256KB より大きい AWS Put*Events API コールイベントをイベントパターンとして使用することはできません。使用できる API コールの詳細については、CloudTrail 「 がサポートするサービスと統合」を参照してください。

AWS のサービスからの読み取り専用の管理イベントの受信

デフォルトまたはカスタムのイベントバスにルールを設定して、 経由で AWSサービスから読み取り専用の管理イベントを受信できます CloudTrail。管理イベントでは、AWS アカウントのリソースで実行される管理オペレーションについて知ることができます。これらのイベントは、コントロールプレーンオペレーションとも呼ばれます。詳細については、「CloudTrail ユーザーガイド」の「管理イベントのログ記録」を参照してください。

デフォルトまたはカスタムのイベントバスのルールごとに、ルールの状態を設定して、受信するイベントの種類を制御できます。

  • ルールを無効にして、EventBridge がイベントをルールと照合しないようにします。

  • ルールを有効にして、CloudTrail を介して配信される読み取り専用の AWS 管理イベントを除き、EventBridge がイベントをルールと照合するようにします。

  • ルールを有効にして、CloudTrail を介して配信される読み取り専用の管理イベントを含むすべてのイベントを EventBridge がルールと照合するようにします。

パートナーイベントバスは AWS イベントを受信しません。

読み取り専用の管理イベントを受信するかどうかを決定する際に考慮すべき点がいくつかあります。

  • AWS Key Management Service の GetKeyPolicyDescribeKey イベント、または IAM の GetPolicyGetRole イベントなどの特定の読み取り専用の管理イベントは、通常の変更イベントよりもはるかに大量に発生します。

  • イベントが DescribeGet、または List で始まらない場合は、既に読み取り専用の管理イベントを受信している可能性があります。例えば、以下の AWS STS API からのイベントは、動詞 Get で始まっていても変更イベントです。

    • GetFederationToken

    • GetSessionToken

    AWS のサービス別の、DescribeGet、または List の命名規則に従わない読み取り専用の管理イベントのリストについては、「AWS のサービスによって生成される管理イベント」を参照してください。

AWS CLI を使用して読み取り専用の管理イベントを受信するルールを作成するには
  • put-rule コマンドを使用してルールを作成または更新し、パラメータを使用して次のことを行います。

    • ルールがデフォルトのイベントバスに属するか、特定のカスタムイベントバスに属するかを指定します。

    • ルールの状態を ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS として設定します。

    aws events put-rule --name "ruleForManagementEvents" --event-bus-name "default" --state "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS"

注記

CloudWatch 管理イベントのルールの有効化は、 CLI AWS および AWS CloudFormation テンプレートでのみサポートされます。

次の例は、特定のイベントと照合する方法を示しています。ベストプラクティスは、イベント別に専用のルールを定義し、わかりやすく編集しやすいようにすることです。

次の例で、専用ルールは AWS Security Token Service からの AssumeRole 管理イベントと一致します。

{ "source" : [ "aws.sts" ], "detail-type": ["AWS API Call via CloudTrail"], "detail" : { "eventName" : ["AssumeRole"] } }