Direkt zum Inhalt

Wie konfiguriere ich kontoübergreifende Ziele in EventBridge?

Lesedauer: 3 Minute
0

Ich möchte eine Amazon-EventBridge-Regel einrichten, um Benachrichtigungen über ein Ereignis in einem AWS-Konto an ein Ziel in einem anderen Konto zu senden.

Lösung

Eine Regel im Quellkonto erstellen

Erstelle eine Regel, um Ereignisse an ein anderes Konto zu senden.

Hinweis: Die EventBridge-Regel und das Ziel müssen sich in derselben AWS-Region befinden. Du kannst kontoübergreifende Ziele nur für die folgenden Ziele konfigurieren:

  • Amazon-API-Gateway-APIs
  • Anwendungen von Amazon Kinesis Data Streams
  • AWS-Lambda-Funktionen
  • Amazon Simple Notification Service (Amazon SNS)-Themen
  • Amazon Simple Queue Service (Amazon SQS)-Warteschlangen

IAM-Berechtigungen im Quellkonto konfigurieren

Stelle sicher, dass die AWS Identity and Access Management (IAM)-Ausführungsrolle, die du dem EventBridge-Regelziel zugewiesen hast, eine Vertrauensbeziehung zu EventBridge hat. Die Vertrauensrichtlinie muss events.amazonaws.com als vertrauenswürdige Einheit einbeziehen. Stelle außerdem sicher, dass die IAM-Richtlinie der Ausführungsrolle die erforderlichen Berechtigungen für die Veröffentlichung auf dem Ziel enthält.

Beispiel für eine Vertrauensbeziehung:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "events.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

Beispiel für eine IAM-Richtlinie:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sns:Publish"
            ],
            "Resource": [
                "arn:aws:sns:Region:Account-ID-of-SNS-Topic:test"
            ]
        }
    ]
}

Hinweis: Ersetze sns:Publish durch die erforderlichen Berechtigungen für dein Ziel und arn:aws:sns:Region:Account-ID-of-SNS-Topic:test durch den Amazon-Ressourcennamen (ARN) der Zielressource.

IAM-Berechtigungen im Zielkonto konfigurieren

Die ressourcenbasierte Richtlinie des Ziels muss EventBridge die für den Zugriff auf das Ziel erforderlichen Berechtigungen gewähren. Überprüfe die IAM-Richtlinie der Zielressource, um sicherzustellen, dass sie über die erforderlichen Berechtigungen verfügt.

Beispiel für eine IAM-Richtlinie für Amazon-SNS-Themen:

{
      "Sid": "AWSEvents_ArticleEvent_Id4950650036948",
      "Effect": "Allow",
      "Principal": {
        "AWS": "IAMRole"
      },
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:Region:Account-ID-of-SNS-topic:test"
    }

Hinweis: Ersetze IAMRole durch den ARN der Ausführungsrolle im Quellkonto und arn:aws:sns:Region:Account-ID-of-SNS-topic:test durch den ARN des SNS-Themas.

(Bei Themen mit aktivierter SSE) Sich vergewissern, dass das Ziel über die erforderlichen AWS-KMS-Berechtigungen verfügt

Das Ziel muss einen vom Kunden verwalteten AWS Key Management Service (AWS KMS)-Schlüssel verwenden. Dieser AWS-KMS-Schlüssel muss eine benutzerdefinierte Schlüsselrichtlinie enthalten, die EventBridge die Erlaubnis erteilt, den Schlüssel zu verwenden.

Gehe wie folgt vor, um die erforderlichen AWS-KMS-Berechtigungen einzurichten:

  1. Erstelle einen neuen, vom Kunden verwalteten Schlüssel in demselben Konto wie die Zielressource. Stelle sicher, dass die AWS-KMS-Schlüsselrichtlinie über die erforderlichen Berechtigungen verfügt, damit EventBridge auf den vom Kunden verwalteten Schlüssel zugreifen kann.
    Beispiel für eine Richtlinie:
    {
        "Sid": "AWSEvents_ArticleEvent_Id4950650036948",
        "Effect": "Allow",
        "Principal": {
            "AWS": "IAMRole"
        },
        "Action": ["kms:Decrypt", "kms:GenerateDataKey"],
        "Resource": "KMS-key-arn"
    }
    Hinweis: Ersetze IAMRole durch den ARN der IAM-Ausführungsrolle und KMS-key-ARN durch den ARN des AWS-KMS-Schlüssels.
  2. Verwende den vom Kunden verwalteten Schlüssel, um die serverseitige Verschlüsselung (SSE) zu konfigurieren.
    Hinweis: Die Anleitung zur Konfiguration der SSE ist für alle Zieltypen gleich.
  3. Stelle sicher, dass die Ausführungsrolle der EventBridge-Regel über eine Richtlinie verfügt, die die API-Aktion kms:Decrypt zulässt.
    Beispiel für eine Richtlinie:
    {    "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": ["kms:Decrypt", "kms:GenerateDataKey"],
                "Resource": "KMS-key-arn"
            }
        ]
    }
    Hinweis: Ersetze KMS-key-arn durch den ARN deines AWS-KMS-Schlüssels.

Probleme beheben

Wenn das SNS-Thema keine Ereignisbenachrichtigungen erhält, findest du weitere Informationen unter Warum hat mein Amazon-SNS-Thema keine EventBridge-Benachrichtigungen erhalten?

Wenn die Lambda-Funktion keine Ereignisbenachrichtigungen erhält, findest du weitere Informationen unter Warum hat meine EventBridge-Regel meine Lambda-Funktion nicht aufgerufen?

Wenn die Amazon-SQS-Warteschlange keine Ereignisbenachrichtigungen erhält, findest du weitere Informationen unter Warum erhält meine Amazon-SQS-Warteschlange keine EventBridge-Benachrichtigungen?

Weitere Schritte zur Problembehandlung findest du unter Wie behebe ich Probleme mit konto- oder regionsübergreifenden EventBridge-Regeln?

AWS OFFICIALAktualisiert vor 4 Monaten