

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à.

# Sospensione automatica dell'invio di e-mail per l'intero account Amazon SES
<a name="monitoring-sender-reputation-pausing-account"></a>

Le procedure in questa sezione spiegano i passaggi per configurare Amazon SES, Amazon SNS CloudWatch, Amazon e AWS Lambda sospendere automaticamente l'invio di e-mail per il tuo account Amazon SES in una singola regione. AWS Se invii e-mail da diverse Regioni, ripeti le procedure di questa sezione per ogni Regione in cui desideri implementare questa soluzione.

**Topics**
+ [Fase 1: creazione di un ruolo IAM](#monitoring-sender-reputation-pausing-account-part-1)
+ [Fase 2: creazione della funzione Lambda](#monitoring-sender-reputation-pausing-account-part-2)
+ [Fase 3: riabilitazione dell'invio di e-mail per l'account](#monitoring-sender-reputation-pausing-account-part-3)
+ [Fase 4: creazione di un argomento Amazon SNS e sottoscrizione](#monitoring-sender-reputation-pausing-account-part-4)
+ [Parte 5: creare un allarme CloudWatch](#monitoring-sender-reputation-pausing-account-part-5)
+ [Fase 6: verifica della soluzione](#monitoring-sender-reputation-pausing-account-part-6)

## Fase 1: creazione di un ruolo IAM
<a name="monitoring-sender-reputation-pausing-account-part-1"></a>

La prima fase per la configurazione della sospensione automatica dell'invio di e-mail consiste nel creare un ruolo IAM in grado di eseguire l'operazione API `UpdateAccountSendingEnabled`.

**Creazione del ruolo IAM**

1. Aprire la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel pannello di navigazione, seleziona **Roles** (Ruoli).

1. Selezionare **Create role (Crea ruolo)**.

1. Nella pagina **Select trusted entity** (Seleziona entità attendibile), scegli **AWS service** (Servizio ) per **Trusted entity type** (tipo Entità attendibile).

1. In **Use case** (Caso d'uso), scegli **Lambda** e quindi scegli **Next** (Successivo).

1. Nella pagina **Add permissions** (Aggiungi autorizzazioni), scegli le policy seguenti:
   + **AWSLambdaBasicExecutionRole**
   + **SESFullAccesso Amazon**
**Suggerimento**  
Utilizzare la casella di ricerca in **Policy di autorizzazione** per individuare rapidamente queste policy, ma si noti che dopo aver cercato e selezionato la prima policy, è necessario scegliere **Clear filters** (Cancella filtri) prima di cercare e selezionare la seconda policy.

   Quindi scegli **Successivo**.

1. Nella pagina **Name, review, and create** (Assegna nome, rivedi e crea), in **Dettagli ruolo**, inserisci un nome significativo per la policy nel campo **Nome ruolo**.

1. Verificare che le due policy selezionate siano elencate nella tabella **Riepilogo della policy di autorizzazione**, quindi scegliere **Create role** (Crea ruolo).

## Fase 2: creazione della funzione Lambda
<a name="monitoring-sender-reputation-pausing-account-part-2"></a>

Dopo aver creato un ruolo IAM, puoi creare la funzione Lambda per la sospensione dell'invio di e-mail per il tuo account.

**Creazione della funzione Lambda**

1. Apri la AWS Lambda console all'indirizzo [https://console.aws.amazon.com/lambda/](https://console.aws.amazon.com/lambda/).

1. Usa il selettore della Regione per scegliere la Regione in cui desideri distribuire questa funzione Lambda.
**Nota**  
Questa funzione sospende solo l'invio di e-mail nella AWS regione selezionata in questo passaggio. Se invii e-mail da più Regioni, ripeti le procedure di questa sezione per ogni Regione in cui desideri che venga sospeso automaticamente l'invio di e-mail.

1. Seleziona **Create function (Crea funzione)**.

1. In **Create function** (Crea funzione), scegli **Author from scratch** (Crea da zero).

1. In **Informazioni di base** eseguire queste operazioni:
   + Per **Nome** digita un nome per la funzione Lambda.
   + Per **Tempo di esecuzione**, scegli **Node.js 14** (o la versione attualmente disponibile nell'elenco selezionato).
   + Per **Architettura**, mantieni il valore predefinito preselezionato, **x86\_64**.
   + In autorizzazioni, espandi **Change default execution role** (Modifica ruolo di esecuzione predefinito) e scegli **Use an existing role** (Usa un ruolo esistente).
   + Fai clic all'interno dell’elenco **Ruolo esistente** e scegli il ruolo IAM creato in [Fase 1: creazione di un ruolo IAM](#monitoring-sender-reputation-pausing-account-part-1).

   Quindi, seleziona **Crea funzione**.

1. In **Fonte funzione**, nell'editor di codice, incolla il codice seguente:

   ```
   'use strict';
   
   
   const { SES } = require("@aws-sdk/client-ses")
   
   // Create a new SES object. 
   
   var ses = new SES({});                  
   
   // Specify the parameters for this operation. In this case, there is only one
   // parameter to pass: the Enabled parameter, with a value of false
   // (Enabled = false disables email sending, Enabled = true enables it).
   var params = {
       Enabled: false
   };
   
   exports.handler = (event, context, callback) => {
       // Pause sending for your entire SES account
       ses.updateAccountSendingEnabled(params, function(err, data) {
           if(err) {
               console.log(err.message);
           } else {
               console.log(data);
           }
       });
   };
   ```

   Scegliere quindi **Deploy (Distribuisci)**.

1. Scegli **Test (Esegui test)**. Se viene visualizzata la finestra **Configure test event** (Configura evento test), digita un nome nel campo **Nome evento**), quindi scegli **Create** (Crea).

1. Espandi la casella **Test** e seleziona il nome dell'evento appena creato e quindi scegli **Test**.

1. Apparirà la scheda **Risultati dell'esecuzione**, appena sotto e a destra; assicurati che venga visualizzato `Status: Succeeded`. Se l'esecuzione della funzione non è riuscita, procedi nel seguente modo:
   + Verifica che il ruolo IAM creato in [Fase 1: creazione di un ruolo IAM](#monitoring-sender-reputation-pausing-account-part-1) contenga le policy corrette.
   + Verifica che il codice nella funzione Lambda non contenga errori. L'editor di codice Lambda evidenzia automaticamente gli errori di sintassi e altri potenziali problemi.

## Fase 3: riabilitazione dell'invio di e-mail per l'account
<a name="monitoring-sender-reputation-pausing-account-part-3"></a>

Un effetto secondario del test della funzione Lambda in [Fase 2: creazione della funzione Lambda](#monitoring-sender-reputation-pausing-account-part-2) è la sospensione dell'invio di e-mail per l'account Amazon SES. Nella maggior parte dei casi, non si desidera sospendere l'invio del proprio account fino a quando non viene CloudWatch attivato l'allarme.

Le procedure in questa sezione consentono di riabilitare l'invio di e-mail per l'account Amazon SES. Per completare questa procedura, è necessario installare e configurare AWS Command Line Interface. Per ulteriori informazioni, consultare la [Guida per l'utente di AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/).

**Riabilitazione dell'invio di e-mail**

1. Nella riga di comando, digita il comando seguente per riabilitare l'invio di e-mail per tuo account. Sostituiscilo {{sending\_region}} con il nome della regione in cui desideri riattivare l'invio di e-mail.

   ```
   aws ses update-account-sending-enabled --enabled --region {{sending_region}}
   ```

1. Nella riga di comando, digita il comando seguente per controllare lo stato dell'invio di e-mail per il tuo account:

   ```
   aws ses get-account-sending-enabled --region {{sending_region}}
   ```

   Se viene visualizzato l'output seguente, la riabilitazione dell'invio di e-mail per il tuo account è riuscita:

   ```
   {
       "Enabled": true 
   }
   ```

## Fase 4: creazione di un argomento Amazon SNS e sottoscrizione
<a name="monitoring-sender-reputation-pausing-account-part-4"></a>

 CloudWatch Per eseguire la funzione Lambda quando viene attivato un allarme, devi prima creare un argomento Amazon SNS e sottoscrivere la funzione Lambda.

**Per creare un argomento Amazon SNS e sottoscrivere la funzione Lambda all'argomento**

1. [Apri la console Amazon SNS nella versione v3/home. https://console.aws.amazon.com/sns/](https://console.aws.amazon.com/sns/v3/home)

1. [Crea un argomento](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) seguendo i passaggi della *Guida per gli sviluppatori di Amazon Simple Notification Service*.

   1. In **Type** (Tipo), deve essere selezionata l'opzione **Standard** (non **FIFO**).

1. [Effettua la sottoscrizione all'argomento](https://docs.aws.amazon.com/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html) seguendo i passaggi della *Guida per gli sviluppatori di Amazon Simple Notification Service*.

   1. Per **Protocol (Protocollo)** scegliere **AWS Lambda**.

   1. Per **Endpoint** scegli la funzione Lambda creata in [Fase 2: creazione della funzione Lambda](#monitoring-sender-reputation-pausing-account-part-2).

## Parte 5: creare un allarme CloudWatch
<a name="monitoring-sender-reputation-pausing-account-part-5"></a>

Questa sezione contiene le procedure per creare un allarme CloudWatch che viene attivato quando una metrica raggiunge una determinata soglia. Quando l'allarme viene attivato, recapita una notifica all'argomento Amazon SNS creato in [Fase 4: creazione di un argomento Amazon SNS e sottoscrizione](#monitoring-sender-reputation-pausing-account-part-4), che quindi esegue la funzione Lambda creata in [Fase 2: creazione della funzione Lambda](#monitoring-sender-reputation-pausing-account-part-2).

**Per creare un allarme CloudWatch**

1. Apri la CloudWatch console all'indirizzo [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Usa il selettore della Regione per scegliere la Regione in cui desideri che l'invio di e-mail venga sospeso automaticamente.

1. Nel pannello di navigazione, seleziona **Alarms** (Allarmi).

1. Scegli **Create Alarm (Crea allarme)**.

1. Nella finestra **Create Alarm** (Crea allarme), in **SES Metrics** (Parametri SES), scegli **Account Metrics** (Parametri account).

1. In **Metric Name (Nome parametro)** scegli una delle opzioni seguenti:
   + **Reputazione. BounceRate** — Scegli questa metrica se desideri sospendere l'invio di e-mail per il tuo account quando la frequenza di rimbalzo totale del tuo account supera una soglia da te definita.
   + **Reputazione. ComplaintRate** — Scegli questa metrica se desideri sospendere l'invio di e-mail per il tuo account quando la percentuale complessiva di reclami per il tuo account supera una soglia da te definita.

   Scegli **Next (Successivo)**.

1. Completa questa procedura:
   + In **Alarm Threshold** (Soglia allarme) digita un nome per l'allarme in **Name** (Nome).
   + In **Whenever: Reputation. BounceRate**o **Ogni volta: Reputazione. ComplaintRate**, specifica la soglia che causa l'attivazione dell'allarme.
**Nota**  
Il tuo account viene automaticamente sottoposto a revisione se la frequenza di rimbalzo supera il 5% o se la frequenza dei reclami supera lo 0,1%. Quando specifichi la frequenza di rimbalzo o di reclamo che fa scattare l' CloudWatch allarme, ti consigliamo di utilizzare valori inferiori a queste percentuali per evitare che il tuo account venga sottoposto a revisione.
   + In **Actions** (Operazioni), in **Whenever this alarm** (Ogni volta che questo allarme), scegli **State is ALARM** (Lo stato è ALLARME). Per **Send notification to** (Invia notifica a) scegli l'argomento Amazon SNS creato in [Fase 4: creazione di un argomento Amazon SNS e sottoscrizione](#monitoring-sender-reputation-pausing-account-part-4).

   Scegli **Crea allarme**.

## Fase 6: verifica della soluzione
<a name="monitoring-sender-reputation-pausing-account-part-6"></a>

A questo punto, puoi testare l'allarme per verificare che esegua la funzione Lambda quando passa nello stato `ALARM`. Puoi usare l'operazione API `SetAlarmState` per modificare temporaneamente lo stato dell'allarme.

Le procedure di questa sezione sono facoltative, ma ti consigliamo di completarle per assicurarti che l'intera soluzione sia configurata correttamente.

1. Nella riga di comando, digita il comando seguente per controllare lo stato dell'invio di e-mail per il tuo account. Sostituisci {{region}} con il nome della regione.

   ```
   aws ses get-account-sending-enabled --region {{region}}
   ```

   Se l'invio è abilitato per il tuo account, verrà visualizzato l'output seguente:

   ```
   {
       "Enabled": true 
   }
   ```

1. Nella riga di comando, digita il comando seguente per modificare temporaneamente lo stato di allarme in `ALARM`: **aws cloudwatch set-alarm-state --alarm-name {{MyAlarm}} --state-value ALARM --state-reason "Testing execution of Lambda function" --region {{region}}**

   Sostituisci {{MyAlarm}} nel comando precedente con il nome dell'avviso in [Parte 5: creare un allarme CloudWatch](#monitoring-sender-reputation-pausing-account-part-5) cui hai creato e sostituiscilo {{region}} con la regione in cui desideri sospendere automaticamente l'invio di e-mail.
**Nota**  
Quando esegui questo comando, lo stato dell'allarme passa da `OK` a `ALARM` e torna a `OK` entro pochi secondi. Puoi visualizzare queste modifiche allo stato nella scheda **Cronologia** dell'allarme nella CloudWatch console o utilizzando l'[DescribeAlarmHistory](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_DescribeAlarmHistory.html)operazione.

1. Nella riga di comando, digita il comando seguente per controllare lo stato dell'invio di e-mail per il tuo account.

   ```
   aws ses get-account-sending-enabled --region {{region}}
   ```

   Se la funzione Lambda viene eseguita correttamente, viene visualizzato il seguente output:

   ```
   {
       "Enabled": false
   }
   ```

1. Completa le fasi in [Fase 3: riabilitazione dell'invio di e-mail per l'account](#monitoring-sender-reputation-pausing-account-part-3) per riabilitare l'invio di e-mail per il tuo account.