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とは」を参照してください。

によって配信されるすべてのイベントは CloudTrail 、 の値AWS API Call via 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 は、証跡を作成することで Amazon S3 バケットでイベントを受信するために API 発信者とリソース所有者の両方をサポートし、 を介して API 発信者にイベントを配信します EventBridge。API 発信者に加えてリソース所有者は、 を介してクロスアカウント API コールをモニタリングできます EventBridge。 CloudTrailの と の統合 EventBridge により、 イベントに応じてルールベースの自動ワークフローを簡単に設定できます。

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

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

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

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

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

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

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

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

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

  • や などの AWS Key Management Service GetKeyPolicy特定の読み取り専用管理イベントDescribeKey、または IAM GetPolicyGetRoleイベントは、一般的な変更イベントよりもはるかに多くのボリュームで発生します。

  • イベントが DescribeGet、または List で始まらない場合は、既に読み取り専用の管理イベントを受信している可能性があります。例えば、次の AWS STS APIs からのイベントは、動詞 で始まるとしても、変更イベントです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 管理イベントのルールの有効化は、 AWS CLI および AWS CloudFormation テンプレートでのみサポートされます。

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

この場合、専用ルールは AssumeRoleの管理イベントと一致します AWS Security Token Service。

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