

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

# Operazioni relative alla politica di protezione dei dati in Amazon SNS
<a name="sns-message-data-protection-operations"></a>

**Importante**  
La protezione dei dati dei messaggi Amazon SNS non sarà più disponibile per i nuovi clienti a partire dal 30 aprile 2026. Per ulteriori informazioni e indicazioni sulle alternative, consulta [Amazon SNS Message Data Protection Availability Change](https://docs.aws.amazon.com/sns/latest/dg/sns-message-data-protection-availability-change.html).

Di seguito sono riportati alcuni esempi di policy di protezione dei dati che puoi utilizzare per controllare e rifiutare i dati sensibili. Per un tutorial completo che include un'applicazione di esempio, consulta il post di blog relativo alla [presentazione della protezione dei dati dei messaggi per Amazon SNS](https://aws.amazon.com/blogs/compute/introducing-message-data-protection-for-amazon-sns/).

## Operazione di verifica
<a name="statement-operation-json-properties-audit"></a>

L'operazione **di audit** campiona i messaggi in entrata tematici e registra i dati sensibili rilevati in una destinazione. AWS La frequenza di campionamento può essere un numero intero compreso tra 0 e 99. Questa operazione richiede uno dei seguenti tipi di destinazione della registrazione:

1. **FindingsDestination**— La destinazione di registrazione quando l'argomento Amazon SNS trova dati sensibili nel payload.

1. **NoFindingsDestination**— La destinazione di registrazione quando l'argomento Amazon SNS non trova dati sensibili nel payload.

Puoi utilizzare quanto segue Servizi AWS in ciascuno dei seguenti tipi di destinazione di log:
+ **Amazon CloudWatch Logs** (opzionale): `LogGroup` deve essere nell'area tematica e il nome deve iniziare con **/aws/vendedlogs/**.
+ ****(Facoltativo): `DeliveryStream` deve rientrare nell'area tematica e avere **Direct** PUT come fonte del flusso di distribuzione. Per ulteriori dettagli, consulta [Source, Destination and Name](https://docs.aws.amazon.com/firehose/latest/dev/create-name.html) nella *Amazon Data Firehose Developer Guide*.
+ **Amazon S3** (facoltativo): il nome di un bucket Amazon S3. [L’utilizzo del bucket Amazon S3 con la crittografia SSE-KMS abilitata richiede azioni aggiuntive](#flow-logs-s3-cmk-policy).

```
{
  "Operation": {
    "Audit": {
      "SampleRate": "99",
      "FindingsDestination": {
            "CloudWatchLogs": {
                "LogGroup": "/aws/vendedlogs/log-group-name"
            },
            "Firehose": {
                "DeliveryStream": "delivery-stream-name"
            },
            "S3": {
                "Bucket": "bucket-name"
            }
      },
      "NoFindingsDestination": {
            "CloudWatchLogs": {
                "LogGroup": "/aws/vendedlogs/log-group-name"
            },
            "Firehose": {
                "DeliveryStream": "delivery-stream-name"
            },
            "S3": {
                "Bucket": "bucket-name"
            }
      }
    }
  }
}
```

### Autorizzazioni richieste per specificare le destinazioni della registrazione
<a name="required-permissions-log-operations"></a>

Quando specifichi le destinazioni di registrazione nella policy di protezione dei dati, devi aggiungere le seguenti autorizzazioni alla policy di identità IAM del principale IAM che chiama l'API `PutDataProtectionPolicy` di Amazon SNS o l'API `CreateTopic` con il parametro `--data-protection-policy`.


| Destinazione della verifica | Autorizzazione IAM | 
| --- | --- | 
| Predefinita | logs:CreateLogDelivery logs:GetLogDelivery logs:UpdateLogDelivery logs:DeleteLogDelivery logs:ListLogDeliveries  | 
| CloudWatchLogs | logs:PutResourcePolicy logs:DescribeResourcePolicies logs:DescribeLogGroups  | 
| Firehose | iam:CreateServiceLinkedRole firehose:TagDeliveryStream  | 
| S3 | s3:PutBucketPolicy s3:GetBucketPolicy [L’utilizzo del bucket Amazon S3 con la crittografia SSE-KMS abilitata richiede azioni aggiuntive](#flow-logs-s3-cmk-policy).   | 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogDelivery",
                "logs:GetLogDelivery",
                "logs:UpdateLogDelivery",
                "logs:DeleteLogDelivery",
                "logs:ListLogDeliveries"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "logs:PutResourcePolicy",
                "logs:DescribeResourcePolicies",
                "logs:DescribeLogGroups"
            ],
            "Resource": [
                "arn:aws:logs:us-west-1:123456789012:SampleLogGroupName:*:*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole",
                "firehose:TagDeliveryStream"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutBucketPolicy",
                "s3:GetBucketPolicy"
            ],
            "Resource": [
                "arn:aws:s3:::bucket-name"
            ]
        }
    ]
}
```

------

#### Policy di chiave richiesta per l’uso con SSE-KMS
<a name="flow-logs-s3-cmk-policy"></a>

Se utilizzi un bucket Amazon S3 come destinazione di log, puoi proteggere i dati nel bucket abilitando la crittografia lato server con chiavi gestite da Amazon S3 (SSE-S3) o la crittografia lato server con (SSE-KMS). AWS KMS keys Per ulteriori informazioni, consulta [Protezione dei dati con la crittografia lato server](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) nella *Guida per l’utente di Amazon S3*.

Se si sceglie SSE-S3, non è richiesta alcuna configurazione aggiuntiva. Amazon S3 gestisce la chiave di crittografia.

Se si sceglie SSE-KMS, è necessario utilizzare una chiave gestita dal cliente. Devi aggiornare la policy delle chiavi per la chiave gestita dal cliente in modo che l'account di consegna del log possa scrivere nel bucket S3. *Per ulteriori informazioni sulla politica delle chiavi richiesta per l'uso con SSE-KMS, consulta la [crittografia lato server con bucket Amazon S3 nella Amazon Logs User Guide](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-logs-SSE-KMS-S3). CloudWatch *

### Esempi di registro della destinazione della verifica
<a name="data-protection-policy-audit-destination-log"></a>

Nell'esempio seguente, `callerPrincipal` viene utilizzato per identificare l'origine del contenuto sensibile e `messageID` viene utilizzato come un riferimento per eseguire il controllo in base alla risposta dell'API `Publish`.

```
{
  "messageId": "34d9b400-c6dd-5444-820d-fbeb0f1f54cf",
  "auditTimestamp": "2022-05-12T2:10:44Z",
  "callerPrincipal": "arn:aws:iam::123412341234:role/Publisher",
  "resourceArn": "arn:aws:sns:us-east-1:123412341234:PII-data-topic",
  "dataIdentifiers": [
    {
      "name": "Name",
      "count": 1,
      "detections": [
        {
          "start": 1,
          "end": 2
        }
      ]
    },
    {
      "name": "PhoneNumber",
      "count": 2,
      "detections": [
        {
          "start": 3,
          "end": 4
        },
        {
          "start": 5,
          "end": 6
        }
      ]
    }
  ]
}
```

### Parametri dell'operazione di verifica
<a name="data-protection-policy-audit-metrics"></a>

Quando un'operazione di controllo ha specificato la proprietà `FindingsDestination` o la `NoFindingsDestination` proprietà, i proprietari dell'argomento ricevono anche CloudWatch `MessagesWithFindings` le `MessagesWithNoFindings` metriche.

![\[Esempi di una verifica che mostra i dati in un periodo di tempo specificato.\]](http://docs.aws.amazon.com/it_it/sns/latest/dg/images/audit-operations-metrics.png)


## Operazione di deidentificazione
<a name="statement-operation-json-properties-deidentify"></a>

L'operazione **Anonimizza** maschera o oscura i dati sensibili dai messaggi pubblicati o consegnati. Questa operazione è disponibile per i messaggi in entrata e richiede uno dei seguenti tipi di configurazione:
+ **MaskConfig**— Maschera utilizzando un carattere supportato dalla tabella seguente. Ad esempio, ssn: `123-45-6789` diventa ssn: `###########`.

  ```
  {
  "Operation": {
      "Deidentify": {
          "MaskConfig": {
              "MaskWithCharacter": "#"
            }
      }
  }
  ```    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/sns/latest/dg/sns-message-data-protection-operations.html)
+ **RedactConfig**— Redigi rimuovendo completamente i dati. Ad esempio, ssn: `123-45-6789` diventa ssn: ` `.

  ```
  {
  "Operation": {
      "Deidentify": {
          "RedactConfig": {}
      }
  }
  ```

In un messaggio in entrata, i dati sensibili vengono deidentificati dopo l'operazione di verifica e il chiamante dell'API `SNS:Publish` riceve il seguente errore di parametro non valido quando l'intero messaggio è sensibile.

`Error code: AuthorizationError ...`

## Operazione di rifiuto
<a name="statement-operation-json-properties-deny"></a>

L'operazione **Deny** (Rifiuto) interrompe l'esecuzione della richiesta API `Publish` o la consegna del messaggio se il messaggio contiene dati sensibili. L'oggetto dell'operazione Deny (Rifiuto) è vuoto in quanto non richiede una configurazione aggiuntiva.

```
"Operation": {
    "Deny": {}
}
```

In un messaggio in entrata, il chiamante dell'API `SNS:Publish` riceve un errore di autorizzazione.

`Error code: AuthorizationError ...`

In un messaggio in uscita, l'argomento Amazon SNS non consegna il messaggio alla sottoscrizione. Per tenere traccia di operazioni di consegna non autorizzate, abilita l'opzione [Delivery status logging](sns-topic-attributes.md) (Registrazione dello stato della consegna) dell'argomento. Nell'esempio seguente viene mostrato un esempio di registro dello stato della consegna:

```
{
    "notification": {
        "messageMD5Sum": "29638742ffb68b32cf56f42a79bcf16b",
        "messageId": "34d9b400-c6dd-5444-820d-fbeb0f1f54cf",
        "topicArn": "arn:aws:sns:us-east-1:123412341234:PII-data-topic",
        "timestamp": "2022-05-12T2:12:44Z"
    },
    "delivery": {
        "deliveryId": "98236591c-56aa-51ee-a5ed-0c7d43493170",
        "destination": "arn:aws:sqs:us-east-1:123456789012:NoNameAccess",
        "providerResponse": "The topic's data protection policy prohibits this message from being delivered to <subscription-arn>",
        "dwellTimeMs":20,
        "attempts":1,
        "statusCode": 403
    },
    "status": "FAILURE"
}
```