Perché il mio argomento Amazon SNS non riceve le notifiche EventBridge?

Ultimo aggiornamento: 20/12/2021

Ho impostato una regola Amazon EventBridge per inviare notifiche al mio argomento Amazon Simple Notification Service (Amazon SNS). Perché il mio argomento Amazon SNS non riceve le notifiche degli eventi?

Risoluzione

Verifica che le destinazioni della regola EventBridge si trovino nella stessa Regione AWS della regola

Le destinazioni associate a una regola devono trovarsi nella stessa Regione della regola.

Nota: per vedere la Regione in cui si trova una risorsa AWS, controlla l'Amazon Resource Name (ARN) della risorsa.

Verifica la causa del problema esaminando i parametri "Invocations" e "FailedInvocations" della regola EventBridge

Nella console di CloudWatch, rivedi i parametri Invocations e FailedInvocations della regola EventBridge.

Se sono presenti punti dati per entrambi i parametri, la notifica della regola EventBridge ha tentato di richiamare la destinazione ma l'invocazione non è riuscita. Per risolvere il problema, devi concedere a EventBridge le autorizzazioni necessarie per pubblicare messaggi nel tuo argomento. Per istruzioni, consulta la sezione Conferma di avere concesso a EventBridge le autorizzazioni necessarie per pubblicare messaggi nel tuo argomento di questo articolo.

Se sono presenti punti dati solo per il parametro Invocations, la notifica della regola EventBridge non ha raggiunto la destinazione. Per risolvere il problema, correggi la configurazione errata sulla destinazione.

Per ulteriori informazioni, consulta Visualizzazione dei parametri disponibili nella guida per l'utente di CloudWatch.

Conferma di avere concesso a EventBridge le autorizzazioni necessarie per pubblicare messaggi nel tuo argomento

La policy basata sulle risorse dell'argomento Amazon SNS deve consentire a EventBridge di pubblicare messaggi nell'argomento. Esamina la policy di AWS Identity and Access Management (IAM) del tuo argomento per verificare che disponga delle autorizzazioni richieste e aggiungile se necessario.

Importante: “events.amazonaws.com” deve essere indicato come valore “Servizio”. “sns:Publish” deve essere elencato come valore “Operazione”.

Per aggiungere le autorizzazioni richieste, segui le istruzioni in La mia regola viene eseguita ma non vedo alcun messaggio pubblicato nel mio argomento Amazon SNS.

Esempio di istruzione delle autorizzazioni IAM che consente a EventBridge di pubblicare messaggi in un argomento Amazon SNS

{
    "Sid": "AWSEvents_ArticleEvent_Id4950650036948",
    "Effect": "Allow",
    "Principal": {
        "Service": "events.amazonaws.com"
    },
    "Action": "sns:Publish",
    "Resource": "arn:aws:sns:us-east-1:123456789012:My_SNS_Topic"
}

(Per argomenti con crittografia lato server (SSE) attivata) Verifica che l'argomento disponga delle autorizzazioni richieste per AWS Key Management Service (AWS KMS)

L'argomento Amazon SNS deve utilizzare una chiave AWS KMS gestita dal cliente. Questa chiave KMS deve includere una policy della chiave personalizzata che conferisca a EventBridge autorizzazioni sufficienti per l'utilizzo della chiave.

Per configurare le autorizzazioni AWS KMS richieste, procedi come segue:

1.    Crea una nuova chiave KMS gestita dal cliente che includa le autorizzazioni necessarie per EventBridge (events.amazonaws.com).

2.    Configura SSE per il tuo argomento Amazon SNS utilizzando la chiave KMS personalizzata appena creata.

3.    Configura le autorizzazioni di AWS KMS che consentono a EventBridge di pubblicare messaggi nel tuo argomento crittografato (events.amazonaws.com).

Esempio di istruzione della policy IAM che consente a EventBridge di pubblicare messaggi in un argomento Amazon SNS crittografato

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

Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?