

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

# Creazione di una chiave di crittografia per l'archiviazione temporanea di Fargate per Amazon ECS
<a name="fargate-create-storage-key"></a>

Crea una chiave gestita dal cliente per crittografare i dati nell'archiviazione temporanea di Fargate.

**Nota**  
La crittografia dell'archiviazione temporanea di Fargate con chiavi gestite dal cliente non è disponibile per i cluster di attività di Windows.  
La crittografia dell'archiviazione temporanea di Fargate con chiavi gestite dal cliente non è disponibile sulle `platformVersions` precedenti alla `1.4.0`.  
Fargate riserva spazio sull'archiviazione temporanea utilizzata solo da Fargate e non viene addebitato alcun costo per lo spazio. L'allocazione potrebbe differire dalle attività chiave non gestite dal cliente, ma lo spazio totale rimane invariato. Puoi visualizzare questa modifica in strumenti come `df`.  
Le chiavi multiregione non sono supportate per l'archiviazione temporanea di Fargate.  
Gli alias delle chiavi KMS non sono supportati per l'archiviazione temporanea di Fargate.

Per creare una chiave gestita dal cliente (CMK) per crittografare lo storage temporaneo per AWS KMS Fargate in, procedi nel seguente modo.

1. [https://console---aws.amazon.com.rproxy.goskope.comPassa](https://console.aws.amazon.com/kms) a /kms.

1. Segui le istruzioni per la [creazione di chiavi](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) nella [Guida per gli sviluppatori di AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)

1. Durante la creazione della AWS KMS chiave, assicuratevi di fornire al servizio Fargate le autorizzazioni AWS KMS operative pertinenti nelle politiche chiave. Per utilizzare la chiave gestita dal cliente con le risorse del cluster di Amazon ECS, le seguenti operazioni API devono essere concesse nella policy della chiave gestita:
   + `kms:GenerateDataKeyWithoutPlainText`‐ Chiama `GenerateDataKeyWithoutPlainText` per generare una chiave dati crittografata dalla chiave fornita AWS KMS .
   + `kms:CreateGrant`: aggiunge una concessione a una chiave gestita dal cliente. Concede l'accesso di controllo a una AWS KMS chiave specificata, che consente l'accesso alle operazioni di concessione richieste da Amazon ECS Fargate. Per ulteriori informazioni sull'[utilizzo delle concessioni](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html), consulta la [Guida per gli sviluppatori di AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html). Ciò consente ad Amazon ECS Fargate di effettuare le seguenti operazioni:
     + Chiama `Decrypt` per AWS KMS ottenere la chiave di crittografia per decrittografare i dati di archiviazione effimeri.
     + Configurare un principale ritirato per consentire al servizio di `RetireGrant`.
   + `kms:DescribeKey`: fornisce i dettagli della chiave gestita dal cliente per consentire ad Amazon ECS di convalidarla se è simmetrica e abilitata.

   L'esempio seguente mostra una politica AWS KMS chiave da applicare alla chiave di destinazione per la crittografia. Per usare gli esempi di dichiarazioni della policy, sostituire *user input placeholders* con le proprie informazioni. Come sempre, configura solo le autorizzazioni di cui hai bisogno, ma dovrai fornire AWS KMS le autorizzazioni ad almeno un utente per evitare errori.

   ```
   {
         "Sid": "Allow generate data key access for Fargate tasks.",
         "Effect": "Allow",
         "Principal": { "Service":"fargate.amazonaws.com" },
         "Action": [
           "kms:GenerateDataKeyWithoutPlaintext"
         ],
         "Condition": {
           "StringEquals": {
             "kms:EncryptionContext:aws:ecs:clusterAccount": [
               "customerAccountId"
             ],
             "kms:EncryptionContext:aws:ecs:clusterName": [
                "clusterName"
             ]   
           }
         },
         "Resource": "*"
       },
       {
         "Sid": "Allow grant creation permission for Fargate tasks.",
         "Effect": "Allow",
         "Principal": { "Service":"fargate.amazonaws.com" },
         "Action": [
           "kms:CreateGrant"
         ],
         "Condition": {
           "StringEquals": {
             "kms:EncryptionContext:aws:ecs:clusterAccount": [
               "customerAccountId"
             ],
             "kms:EncryptionContext:aws:ecs:clusterName": [
                "clusterName"
             ]   
           },
          "ForAllValues:StringEquals": {
             "kms:GrantOperations": [
                "Decrypt"
             ]
          }
         },
         "Resource": "*"
       },
       {
         "Sid": "Allow describe key permission for cluster operator - CreateCluster and UpdateCluster.",
         "Effect": "Allow",
         "Principal": { "AWS":"arn:aws:iam::customerAccountId:role/customer-chosen-role" },
         "Action": [
           "kms:DescribeKey"
         ],
         "Resource": "*"
       }
   ```

   Le attività di Fargate utilizzano le chiavi contestuali di crittografia `aws:ecs:clusterAccount` e `aws:ecs:clusterName` per le operazioni di crittografia con la chiave. I clienti devono aggiungere queste autorizzazioni per limitare l'accesso a un cluster di account specifico. and/or Utilizza il nome del cluster e non l'ARN quando specifichi il cluster.

   Per ulteriori informazioni, consultare [Contesto della crittografia](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) nella [Guida per gli sviluppatori di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html).

   Quando crei o aggiorni un cluster, puoi utilizzare una chiave di condizione `fargateEphemeralStorageKmsKeyId`. Tale chiave di condizione consente ai clienti di avere un controllo più granulare delle policy IAM. Gli aggiornamenti alla configurazione `fargateEphemeralStorageKmsKeyId` hanno effetto solo sulle nuove implementazioni di servizi.

   Di seguito è riportato un esempio di come consentire ai clienti di concedere le autorizzazioni solo a uno specifico set di chiavi approvate AWS KMS .

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "ecs:CreateCluster",
           "ecs:UpdateCluster"
         ],
         "Resource": "*",
         "Condition": {
           "StringEquals": {
             "ecs:fargate-ephemeral-storage-kms-key": "arn:aws:kms:us-west-2:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
           }
         }
       }
     ]
   }
   ```

------

   Segue un esempio per negare i tentativi di rimuovere AWS KMS chiavi già associate a un cluster.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": {
       "Effect": "Deny",
       "Action": [
           "ecs:CreateCluster",
           "ecs:UpdateCluster"
       ],
       "Resource": "*",
       "Condition": {
         "Null": {
           "ecs:fargate-ephemeral-storage-kms-key": "true"
         }
       }
     }
   }
   ```

------

   I clienti possono verificare se le attività non gestite o le attività di servizio sono crittografate utilizzando la chiave utilizzando i AWS CLI `describe-tasks` comandi`describe-cluster`, o`describe-services`.

   Per ulteriori informazioni sulle chiavi, consulta [Condition keys for AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html) nella [Guida per gli sviluppatori di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html).

------
#### [ Console di gestione AWS ]

1. [Apri la console nella versione 2https://console.aws.amazon.com/ecs/.](https://console.aws.amazon.com/ecs/v2)

1. Scegli **Cluster** nella barra di navigazione a sinistra e **Crea cluster** in alto a destra oppure scegli un cluster esistente. Per un cluster esistente, scegli **Aggiorna cluster** in alto a destra.

1. Nella sezione **Crittografia** del flusso di lavoro, avrai la possibilità di selezionare la tua AWS KMS chiave in **Archiviazione gestita e Archiviazione** **effimera Fargate**. Puoi anche scegliere di **creare una AWS KMS chiave da qui**.

1. Scegli **Crea** una volta terminata la creazione del nuovo cluster o **Aggiorna**, se ne stavi aggiornando uno esistente.

------
#### [ AWS CLI ]

Di seguito è riportato un esempio di creazione di un cluster e configurazione dello storage temporaneo Fargate utilizzando (sostituisci AWS CLI *red* i valori con i tuoi):

```
aws ecs create-cluster --cluster clusterName \
--configuration '{"managedStorageConfiguration":{"fargateEphemeralStorageKmsKeyId":"arn:aws:kms:us-west-2:012345678901:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"}}'
{
    "cluster": {
        "clusterArn": "arn:aws:ecs:us-west-2:012345678901:cluster/clusterName",
        "clusterName": "clusterName",
        "configuration": {
            "managedStorageConfiguration": {
                "fargateEphemeralStorageKmsKeyId": "arn:aws:kms:us-west-2:012345678901:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
            }
        },
        "status": "ACTIVE",
        "registeredContainerInstancesCount": 0,
        "runningTasksCount": 0,
        "pendingTasksCount": 0,
        "activeServicesCount": 0,
        "statistics": [],
        "tags": [],
        "settings": [],
        "capacityProviders": [],
        "defaultCapacityProviderStrategy": []
    },
    "clusterCount": 5
}
```

------
#### [ CloudFormation ]

Di seguito è riportato un modello di esempio per la creazione di un cluster e la configurazione dello storage temporaneo Fargate utilizzando (sostituisci CloudFormation *red* i valori con i tuoi):

```
AWSTemplateFormatVersion: 2010-09-09
Resources:
  MyCluster: 
    Type: AWS::ECS::Cluster
    Properties: 
      ClusterName: "clusterName" 
      Configuration:
        ManagedStorageConfiguration:
          FargateEphemeralStorageKmsKeyId: "arn:aws:kms:us-west-2:012345678901:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

------