Notifica agli utenti delle modifiche agli allarmi - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Notifica agli utenti delle modifiche agli allarmi

Questa sezione spiega come utilizzare AWS User Notifications o Amazon Simple Notification Service per avvisare gli utenti delle modifiche agli allarmi.

Configurazione delle notifiche AWS utente

È possibile utilizzare le notifiche AWS utente per configurare i canali di consegna per ricevere notifiche sulla modifica dello stato CloudWatch dell'allarme e sugli eventi di modifica della configurazione. L'utente riceverà una notifica quando un evento corrisponde a una regola specificata. È possibile ricevere notifiche per gli eventi tramite più canali, tra cui e-mail, notifiche chat di AWS Chatbot o notifiche push di AWS Console Mobile Application. È possibile visualizzare le notifiche anche nel Centro notifiche della console. La funzionalità Notifiche all'utente supporta l'aggregazione, che può ridurre il numero di notifiche ricevute durante eventi specifici.

Le configurazioni di notifica create con AWS User Notifications non vengono conteggiate ai fini del limite del numero di azioni che è possibile configurare per lo stato di allarme desiderato. Poiché AWS User Notificatinos corrisponde agli eventi trasmessi ad Amazon EventBridge, invia notifiche per tutti gli allarmi nel tuo account e nelle regioni selezionate, a meno che tu non specifichi un filtro avanzato per consentire o negare allarmi o schemi specifici.

L'esempio seguente di filtro avanzato corrisponde a una modifica dello stato dell'allarme da OK a quella relativa all'allarme denominato. ALARM ServerCpuTooHigh

{ "detail": { "alarmName": ["ServerCpuTooHigh"], "previousState": { "value": ["OK"] }, "state": { "value": ["ALARM"] } } }

È possibile utilizzare una qualsiasi delle proprietà pubblicate da un avviso negli EventBridge eventi per creare un filtro. Per ulteriori informazioni, consulta Eventi di allarme e EventBridge.

Configurazione SNS delle notifiche Amazon

Puoi utilizzare Amazon Simple Notification Service per inviare sia messaggi application-to-application (A2A) che messaggi application-to-person (A2P), inclusi messaggi di testo mobili (SMS) ed e-mail. Per ulteriori informazioni, consulta le destinazioni SNS degli eventi Amazon.

Per ogni stato che può assumere un allarme, puoi configurarlo per inviare un messaggio a un SNS argomento. Ogni SNS argomento Amazon che configuri per uno stato di un determinato allarme viene conteggiato ai fini del limite del numero di azioni che puoi configurare per quell'allarme e stato. Puoi inviare messaggi allo stesso SNS argomento Amazon da qualsiasi allarme presente nel tuo account e utilizzare lo stesso SNS argomento Amazon sia per gli utenti dell'applicazione (A2A) che per quelli di persona (A2P). Poiché questa configurazione viene eseguita a livello di allarme, solo gli allarmi che hai configurato inviano messaggi all'SNSargomento Amazon selezionato.

Come prima cosa crea e sottoscrivi un argomento. Puoi anche pubblicare un messaggio di prova per l'argomento. Per vedere un esempio, consulta Impostazione di un SNS argomento Amazon utilizzando il AWS Management Console. O per ulteriori informazioni, consulta la sezione Guida introduttiva ad Amazon SNS.

In alternativa, se prevedi di utilizzare il AWS Management Console per creare la CloudWatch sveglia, puoi saltare questa procedura perché puoi creare l'argomento quando crei l'allarme.

Quando crei un CloudWatch allarme, puoi aggiungere azioni per qualsiasi stato target in cui entra l'allarme. Aggiungi una SNS notifica Amazon per lo stato di cui desideri ricevere una notifica e seleziona l'SNSargomento Amazon che hai creato nel passaggio precedente per inviare una notifica e-mail quando l'allarme entra nello stato selezionato.

Nota

Quando crei un SNS argomento Amazon, scegli di renderlo un argomento standard o un FIFOargomento. CloudWatch garantisce la pubblicazione di tutte le notifiche di allarme relative a entrambi i tipi di argomenti. Tuttavia, anche se si utilizza un FIFO argomento, in rari casi CloudWatch invia le notifiche all'argomento in modo errato. Se si utilizza un FIFO argomento, l'avviso imposta l'ID del gruppo di messaggi delle notifiche di allarme in modo che sia un hash ARN dell'avviso.

Prevenire la confusione dei vicesceriffitti

Con "confused deputy" si intende un problema di sicurezza in cui un'entità che non dispone dell'autorizzazione per eseguire una certa operazione può costringere un'entità con più privilegi a eseguire tale operazione. Nel AWS, l'impersonificazione intersettoriale può portare alla confusione del problema del vicesceriffo. La rappresentazione tra servizi può verificarsi quando un servizio (il servizio chiamante) effettua una chiamata a un altro servizio (il servizio chiamato). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare ciò, AWS fornisce strumenti per poterti a proteggere i tuoi dati per tutti i servizi con entità di servizio a cui è stato concesso l'accesso alle risorse del tuo account.

Ti consigliamo di utilizzare le chiavi contestuali aws:SourceArnaws:SourceAccountaws:SourceOrgID,, e aws:SourceOrgPathsglobal condition nelle politiche delle risorse per limitare le autorizzazioni che Amazon SNS concede a un altro servizio alla risorsa. aws:SourceArnDa utilizzare per associare una sola risorsa all'accesso a più servizi. Utilizzato aws:SourceAccount per consentire che qualsiasi risorsa in quell'account venga associata all'utilizzo tra servizi. Utilizzato aws:SourceOrgID per consentire l'associazione di qualsiasi risorsa di qualsiasi account all'interno di un'organizzazione all'utilizzo tra servizi. Da utilizzare aws:SourceOrgPaths per associare qualsiasi risorsa proveniente dagli account all'interno di un AWS Organizations percorso all'utilizzo tra servizi. Per ulteriori informazioni sull'utilizzo e la comprensione dei percorsi, vedi Comprendere il percorso dell' AWS Organizations entità.

Il modo più efficace per proteggersi dal confuso problema del vicesceriffo consiste nell'utilizzare la chiave di contesto ARN della condizione aws:SourceArn globale con l'intera risorsa. Se non conosci la dimensione completa ARN della risorsa o se stai specificando più risorse, usa la chiave aws:SourceArn global context condition con caratteri jolly (*) per le parti sconosciute di. ARN Ad esempio arn:aws:servicename:*:123456789012:*.

Se il aws:SourceArn valore non contiene l'ID dell'account, ad esempio un bucket Amazon S3ARN, devi utilizzarli entrambi aws:SourceAccount e aws:SourceArn limitare le autorizzazioni.

Per proteggersi dal problema "confused deputy" su larga scala, nelle policy basate sulle risorse utilizza la chiave di contesto della condizione globale aws:SourceOrgID o aws:SourceOrgPaths con l'ID dell'organizzazione o il percorso dell'organizzazione della risorsa. Quando aggiungi, rimuovi o sposti degli account all’interno dell’organizzazione, le policy che includono la chiave aws:SourceOrgID o aws:SourceOrgPaths includono automaticamente anche gli account corretti e non necessitano dell'aggiornamento manuale.

Il valore di aws:SourceArn deve essere il valore ARN dell'allarme che invia le notifiche.

L'esempio seguente mostra come utilizzare le chiavi di contesto aws:SourceArn e aws:SourceAccount global condition CloudWatch per evitare il confuso problema del vice.

{ "Statement": [{ "Effect": "Allow", "Principal": { "Service": "cloudwatch.amazonaws.com" }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:us-east-2:444455556666:MyTopic", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:us-east-2:111122223333:alarm:*" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } }] }

Se un allarme non ARN include ASCII caratteri, usa solo il tasto di condizione aws:SourceAccount globale per limitare i permessi.

Impostazione di un SNS argomento Amazon utilizzando il AWS Management Console

Come prima cosa crea e sottoscrivi un argomento. Puoi anche pubblicare un messaggio di prova per l'argomento.

Per creare un argomento SNS
  1. Apri la SNS console Amazon su https://console.aws.amazon.com/sns/v3/home.

  2. Nella SNS dashboard di Amazon, in Azioni comuni, scegli Crea argomento.

  3. Nella finestra di dialogo Create new topic (Crea nuovo argomento) per Topic name (Nome argomento), digita un nome per l'argomento (ad esempio, my-topic).

  4. Scegli Create topic (Crea argomento).

  5. Copia l'argomento ARN per l'attività successiva (ad esempio, arn:aws:sns:us-east- 1:111122223333:my-topic).

Per effettuare la sottoscrizione a un argomento SNS
  1. Apri la SNS console Amazon su https://console.aws.amazon.com/sns/v3/home.

  2. Nel pannello di navigazione, scegli Sottoscrizioni, quindi Crea sottoscrizione.

  3. Nella finestra di dialogo Crea abbonamento, per Argomento ARN, incolla ARN l'argomento creato nell'attività precedente.

  4. Per Protocol, scegli Email.

  5. Per Endpoint, digita un indirizzo e-mail che puoi utilizzare per ricevere la notifica, quindi scegli Create subscription (Crea abbonamento).

  6. Dalla tua applicazione di posta elettronica, apri il messaggio da AWS Notifiche e conferma l'iscrizione.

    Il tuo browser web visualizza una risposta di conferma da AmazonSNS.

Per pubblicare un messaggio di prova su un SNS argomento
  1. Apri la SNS console Amazon su https://console.aws.amazon.com/sns/v3/home.

  2. Nel pannello di navigazione, scegli Topics (Argomenti).

  3. Nella pagina Topics (Argomenti), seleziona un argomento e scegli Publish to topic (Pubblica nell'argomento).

  4. Nella pagina Publish a message (Pubblica un messaggio), per Subject (Oggetto), digita l'oggetto del messaggio e per Message (Messaggio) digita un breve messaggio.

  5. Seleziona Publish Message (Pubblica messaggio).

  6. Controlla la tua e-mail per la conferma di ricezione del messaggio.

Impostazione di un SNS argomento utilizzando il AWS CLI

Innanzitutto, create un SNS argomento, quindi pubblicate un messaggio direttamente sull'argomento per verificare che sia stato configurato correttamente.

Per impostare un SNS argomento
  1. Crea l'argomento usando il comando create-topic come segue.

    aws sns create-topic --name my-topic

    Amazon SNS restituisce un argomento ARN con il seguente formato:

    { "TopicArn": "arn:aws:sns:us-east-1:111122223333:my-topic" }
  2. Sottoscrivi l'indirizzo e-mail per l'argomento utilizzando il comando subscribe. Se la richiesta di abbonamento va a buon fine, riceverai un'e-mail di conferma.

    aws sns subscribe --topic-arn arn:aws:sns:us-east-1:111122223333:my-topic --protocol email --notification-endpoint my-email-address

    Amazon SNS restituisce quanto segue:

    { "SubscriptionArn": "pending confirmation" }
  3. Dalla tua applicazione di posta elettronica, apri il messaggio da AWS Notifiche e conferma l'iscrizione.

    Nel Web browser viene visualizzata una risposta di conferma da Amazon Simple Notification Service.

  4. Controlla l'abbonamento usando il list-subscriptions-by-topiccomando.

    aws sns list-subscriptions-by-topic --topic-arn arn:aws:sns:us-east-1:111122223333:my-topic

    Amazon SNS restituisce quanto segue:

    { "Subscriptions": [ { "Owner": "111122223333", "Endpoint": "me@mycompany.com", "Protocol": "email", "TopicArn": "arn:aws:sns:us-east-1:111122223333:my-topic", "SubscriptionArn": "arn:aws:sns:us-east-1:111122223333:my-topic:64886986-bf10-48fb-a2f1-dab033aa67a3" } ] }
  5. (Facoltativo) Pubblica un messaggio test per l'argomento utilizzando il comando publish.

    aws sns publish --message "Verification" --topic arn:aws:sns:us-east-1:111122223333:my-topic

    Amazon SNS restituisce quanto segue.

    { "MessageId": "42f189a0-3094-5cf6-8fd7-c2dde61a4d7d" }
  6. Controlla la tua e-mail per la conferma di ricezione del messaggio.

Schema delle SNS notifiche Amazon quando gli allarmi cambiano stato

Questa sezione elenca gli schemi delle notifiche inviate agli SNS argomenti di Amazon quando gli allarmi cambiano il loro stato.

Schema quando un allarme metrico cambia stato

{ "AlarmName": "string", "AlarmDescription": "string", "AWSAccountId": "string", "AlarmConfigurationUpdatedTimestamp": "string", "NewStateValue": "string", "NewStateReason": "string", "StateChangeTime": "string", "Region": "string", "AlarmArn": "string", "OldStateValue": "string", "OKActions": ["string"], "AlarmActions": ["string"], "InsufficientDataActions": ["string"], "Trigger": { "MetricName": "string", "Namespace": "string", "StatisticType": "string", "Statistic": "string", "Unit": "string or null", "Dimensions": [ { "value": "string", "name": "string" } ], "Period": "integer", "EvaluationPeriods": "integer", "DatapointsToAlarm": "integer", "ComparisonOperator": "string", "Threshold": "number", "TreatMissingData": "string", "EvaluateLowSampleCountPercentile": "string or null" } }

Schema quando un allarme composito cambia stato

{ "AlarmName": "string", "AlarmDescription": "string", "AWSAccountId": "string", "NewStateValue": "string", "NewStateReason": "string", "StateChangeTime": "string", "Region": "string", "AlarmArn": "string", "OKActions": [String], "AlarmActions": [String], "InsufficientDataActions": [String], "OldStateValue": "string", "AlarmRule": "string", "TriggeringChildren": [String] }