

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

# Crittografia dei log
<a name="jobs-log-encryption"></a>

## Crittografia dei log EMR Serverless con storage gestito
<a name="jobs-log-encryption-managed-storage"></a>

Per crittografare i log nello storage gestito con la tua chiave KMS, utilizza la `managedPersistenceMonitoringConfiguration` configurazione quando invii l'esecuzione di un processo.

```
{
    "monitoringConfiguration": {
        "managedPersistenceMonitoringConfiguration" : {
            "encryptionKeyArn": "{{key-arn}}"
        }
    }
}
```

## Crittografia dei log EMR Serverless con bucket Amazon S3
<a name="jobs-log-encryption-s3-buckets"></a>

Per crittografare i log nel tuo bucket Amazon S3 con la tua chiave KMS, utilizza la configurazione quando invii l'esecuzione di un processo. `s3MonitoringConfiguration`

```
{
    "monitoringConfiguration": {
        "s3MonitoringConfiguration": {
            "logUri": "s3://{{amzn-s3-demo-logging-bucket}}/logs/",
            "encryptionKeyArn": "{{key-arn}}"
        }
    }
}
```

## Crittografia dei log EMR Serverless con Amazon CloudWatch
<a name="jobs-log-encryption-cw"></a>

Per crittografare i log in Amazon CloudWatch con la tua chiave KMS, utilizza la `cloudWatchLoggingConfiguration` configurazione quando invii un job run.

```
{
    "monitoringConfiguration": {
        "cloudWatchLoggingConfiguration": {
            "enabled": true,
            "encryptionKeyArn": "key-arn"
         }
     }
}
```

## Autorizzazioni richieste per la crittografia dei log
<a name="jobs-log-encryption-permissions"></a>

**Topics**
+ [Autorizzazioni utente richieste](#jobs-log-encryption-permissions-user)
+ [Autorizzazioni con chiave di crittografia per Amazon S3 e storage gestito](#jobs-log-encryption-permissions-s3)
+ [Autorizzazioni della chiave di crittografia per Amazon CloudWatch](#jobs-log-encryption-permissions-cw)

### Autorizzazioni utente richieste
<a name="jobs-log-encryption-permissions-user"></a>

L'utente che invia il job o visualizza i log o le interfacce utente dell'applicazione deve disporre delle autorizzazioni per utilizzare la chiave. È possibile specificare le autorizzazioni nella policy delle chiavi KMS o nella policy IAM per l'utente, il gruppo o il ruolo. Se l'utente che invia il job non dispone delle autorizzazioni chiave KMS, EMR Serverless rifiuta l'invio del job run.

**Esempio di politica chiave **

La seguente politica chiave fornisce le autorizzazioni per `kms:GenerateDataKey` e`kms:Decrypt`:

```
{
    "Effect": "Allow",
    "Principal":{
       "AWS": "arn:aws:iam::{{111122223333}}:user/{{user-name}}"
     },
     "Action": [
       "kms:GenerateDataKey",       
       "kms:Decrypt"
      ],
     "Resource": "*"
 }
```

**Policy IAM di esempio**

La seguente politica IAM fornisce le autorizzazioni per `kms:GenerateDataKey` e: `kms:Decrypt`

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt"
      ],
      "Resource": [
        "arn:aws:kms:*:123456789012:key/12345678-1234-1234-1234-123456789012"
      ],
      "Sid": "AllowKMSGeneratedatakey"
    }
  ]
}
```

------

Per avviare l'interfaccia utente di Spark o Tez, concedi ai tuoi utenti, gruppi o ruoli le autorizzazioni per accedere all'`emr-serverless:GetDashboardForJobRun`API come segue:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "emr-serverless:GetDashboardForJobRun"
      ],
      "Resource": [
        "*"
      ],
      "Sid": "AllowEMRSERVERLESSGetdashboardforjobrun"
    }
  ]
}
```

------

### Autorizzazioni con chiave di crittografia per Amazon S3 e storage gestito
<a name="jobs-log-encryption-permissions-s3"></a>

Quando crittografi i log con la tua chiave di crittografia nello storage gestito o nei bucket S3, configura le autorizzazioni delle chiavi KMS come segue.

Il `emr-serverless.amazonaws.com` principale deve disporre delle seguenti autorizzazioni nella policy per la chiave KMS:

```
{
    "Effect": "Allow",
    "Principal":{
       "Service": "emr-serverless.amazonaws.com" 
     },
     "Action": [
       "kms:Decrypt",
       "kms:GenerateDataKey"
      ],
     "Resource": "*"
     "Condition": {
       "StringLike": {
         "aws:SourceArn": "arn:aws:emr-serverless:region:{{aws-account-id}}:/applications/{{application-id}}"
       }
     }
 }
```

Come best practice di sicurezza, ti suggeriamo di aggiungere una chiave di `aws:SourceArn` condizione alla policy delle chiavi del KMS. La chiave di condizione globale IAM `aws:SourceArn` aiuta a garantire che EMR Serverless utilizzi la chiave KMS solo per l'ARN di un'applicazione. 

Il ruolo Job Runtime deve disporre delle seguenti autorizzazioni nella sua policy IAM:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt"
      ],
      "Resource": [
        "arn:aws:kms:*:123456789012:key/12345678-1234-1234-1234-123456789012"
      ],
      "Sid": "AllowKMSGeneratedatakey"
    }
  ]
}
```

------

### Autorizzazioni della chiave di crittografia per Amazon CloudWatch
<a name="jobs-log-encryption-permissions-cw"></a>

Per associare la chiave KMS ARN al tuo gruppo di log, utilizza la seguente policy IAM per il ruolo di runtime del job.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:AssociateKmsKey"
      ],
      "Resource": [
        "arn:aws:logs:*:123456789012:log-group:my-log-group-name:*"
      ],
      "Sid": "AllowLOGSAssociatekmskey"
    }
  ]
}
```

------

Configura la policy chiave KMS per concedere le autorizzazioni KMS ad Amazon: CloudWatch

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Id": "key-default-1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:Decrypt",
        "kms:GenerateDataKey"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "ArnLike": {
          "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:*:123456789012:*"
        }
      },
      "Sid": "AllowKMSDecrypt"
    }
  ]
}
```

------