

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 inattiva in Amazon Keyspaces
<a name="EncryptionAtRest"></a>

[La *crittografia a riposo* di Amazon Keyspaces (per Apache Cassandra) offre una maggiore sicurezza crittografando tutti i dati inattivi utilizzando le chiavi di crittografia archiviate in ().AWS Key Management ServiceAWS KMS](https://aws.amazon.com/kms/) Questa funzionalità consente di ridurre gli oneri operativi e la complessità associati alla protezione dei dati sensibili. Con la crittografia a riposo, puoi creare applicazioni sensibili alla sicurezza che soddisfano rigorosi requisiti di conformità e normativi per la protezione dei dati. 

 La crittografia a riposo di Amazon Keyspaces crittografa i dati utilizzando Advanced Encryption Standard (AES-256) a 256 bit. Questo aiuta a proteggere i dati dall'accesso non autorizzato allo storage sottostante. 

Amazon Keyspaces crittografa e decrittografa i dati in tabelle e flussi in modo trasparente. Amazon Keyspaces utilizza la crittografia a busta e una gerarchia di chiavi per proteggere le chiavi di crittografia dei dati. Si integra con l'archiviazione e AWS KMS la gestione della chiave di crittografia principale. Per ulteriori informazioni sulla gerarchia delle chiavi di crittografia, vedere. [Crittografia a riposo: come funziona in Amazon Keyspaces](encryption.howitworks.md) Per ulteriori informazioni su AWS KMS concetti come la crittografia degli involucri, consulta i [concetti AWS KMS dei servizi di gestione nella Guida](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) per gli *AWS Key Management Service sviluppatori*.

 Quando crei una nuova tabella, puoi scegliere una delle seguenti *AWS KMS chiavi (chiavi KMS*): 
+ Chiave di proprietà di AWS — Questo è il tipo di crittografia predefinito. La chiave è di proprietà di Amazon Keyspaces (senza costi aggiuntivi). 
+ Chiave gestita dal cliente: questa chiave è memorizzata nel tuo account e viene creata, posseduta e gestita da te. Hai il pieno controllo della chiave gestita dal cliente (a AWS KMS pagamento).

Amazon Keyspaces crittografa automaticamente i flussi di change data capture (CDC) con la stessa chiave della tabella sottostante. Per ulteriori informazioni su CDC, consulta. [Utilizzo di flussi di acquisizione dati di modifica (CDC) in Amazon Keyspaces](cdc.md)

 È possibile passare dalla chiave gestita dal Chiave di proprietà di AWS cliente a quella gestita dal cliente in qualsiasi momento. È possibile specificare una chiave gestita dal cliente quando si crea una nuova tabella o si modifica la chiave KMS di una tabella esistente utilizzando la console o utilizzando a livello di codice le istruzioni CQL. Per scoprire come, consulta [Crittografia dei dati inattivi: come utilizzare le chiavi gestite dal cliente per crittografare le tabelle in Amazon Keyspaces](encryption.customermanaged.md).

 La crittografia a riposo utilizzando l'opzione predefinita di Chiavi di proprietà di AWS è offerta senza costi aggiuntivi. Tuttavia, per le chiavi gestite dal cliente vengono AWS KMS addebitati dei costi. Per ulteriori informazioni sui prezzi, consulta [Prezzi di AWS KMS](https://aws.amazon.com/kms/pricing).

La crittografia a riposo di Amazon Keyspaces è disponibile in tutte le regioni Regioni AWS, incluse AWS Cina (Pechino) e AWS Cina (Ningxia). Per ulteriori informazioni, consulta [Crittografia a riposo: come funziona in Amazon Keyspaces](encryption.howitworks.md).

**Topics**
+ [Crittografia a riposo: come funziona in Amazon Keyspaces](encryption.howitworks.md)
+ [Crittografia dei dati inattivi: come utilizzare le chiavi gestite dal cliente per crittografare le tabelle in Amazon Keyspaces](encryption.customermanaged.md)

# Crittografia a riposo: come funziona in Amazon Keyspaces
<a name="encryption.howitworks"></a>

La *crittografia a riposo di Amazon Keyspaces (per Apache Cassandra) crittografa i dati utilizzando l'Advanced* Encryption Standard (AES-256) a 256 bit. Questo aiuta a proteggere i dati dall'accesso non autorizzato allo storage sottostante. Per impostazione predefinita, tutti i dati dei clienti nelle tabelle di Amazon Keyspaces sono crittografati quando sono inattivi e la crittografia lato server è trasparente, il che significa che non sono necessarie modifiche alle applicazioni.

Encryption at rest si integra con AWS Key Management Service (AWS KMS) per la gestione della chiave di crittografia utilizzata per crittografare le tabelle. Quando crei una nuova tabella o aggiorni una tabella esistente, puoi scegliere una delle seguenti opzioni *AWS KMS chiave*:
+ Chiave di proprietà di AWS — Questo è il tipo di crittografia predefinito. La chiave è di proprietà di Amazon Keyspaces (senza costi aggiuntivi).
+ Chiave gestita dal cliente: questa chiave è memorizzata nel tuo account e viene creata, posseduta e gestita da te. Hai il pieno controllo della chiave gestita dal cliente (a AWS KMS pagamento).

**AWS KMS chiave (chiave KMS)**  
Encryption at rest protegge tutti i dati di Amazon Keyspaces con una AWS KMS chiave. Per impostazione predefinita, Amazon Keyspaces utilizza una [Chiave di proprietà di AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk)chiave di crittografia multi-tenant creata e gestita in un account del servizio Amazon Keyspaces.   
Tuttavia, puoi crittografare le tue tabelle Amazon Keyspaces utilizzando [una chiave gestita dal cliente](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) nel tuo. Account AWS Puoi selezionare una chiave KMS diversa per ogni tabella in un keyspace. La chiave KMS selezionata per una tabella viene utilizzata anche per crittografare tutti i metadati e i backup ripristinabili.   
Quando si crea o si aggiorna la tabella, si seleziona la chiave KMS per una tabella. Puoi modificare la chiave KMS per una tabella in qualsiasi momento, nella console Amazon Keyspaces o utilizzando l'[istruzione ALTER TABLE](cql.ddl.keyspace.md#cql.ddl.keyspace.alter). Il processo di cambio delle chiavi KMS è semplice e non richiede tempi di inattività né causa un peggioramento del servizio.

**Gerarchia delle chiavi**  
Amazon Keyspaces utilizza una gerarchia di chiavi per crittografare i dati. In questa gerarchia di chiavi, la chiave KMS è la chiave principale. Viene utilizzato per crittografare e decrittografare la chiave di crittografia della tabella Amazon Keyspaces. La chiave di crittografia delle tabelle viene utilizzata per crittografare le chiavi di crittografia utilizzate internamente da Amazon Keyspaces per crittografare e decrittografare i dati durante l'esecuzione di operazioni di lettura e scrittura.   
Con la gerarchia delle chiavi di crittografia, puoi apportare modifiche alla chiave KMS senza dover crittografare nuovamente i dati o influire sulle applicazioni e sulle operazioni in corso sui dati.   

![\[Gerarchia delle chiavi che mostra la chiave principale, la chiave di crittografia della tabella e la chiave di crittografia dei dati utilizzata per la crittografia a riposo.\]](http://docs.aws.amazon.com/it_it/keyspaces/latest/devguide/images/keyspaces_encryption.png)


**Chiave della tabella**  
La chiave della tabella Amazon Keyspaces viene utilizzata come chiave di crittografia delle chiavi. Amazon Keyspaces utilizza la chiave di tabella per proteggere le chiavi interne di crittografia dei dati utilizzate per crittografare i dati archiviati in tabelle, file di log e backup ripristinabili. Amazon Keyspaces genera una chiave di crittografia dei dati unica per ogni struttura sottostante in una tabella. Tuttavia, più righe della tabella potrebbero essere protette dalla stessa chiave di crittografia dei dati.  
Quando imposti per la prima volta la chiave KMS su una chiave gestita dal cliente, AWS KMS genera una *chiave dati*. La chiave AWS KMS dati si riferisce alla chiave della tabella in Amazon Keyspaces.  
Quando accedi a una tabella crittografata, Amazon Keyspaces invia una richiesta per utilizzare la chiave KMS AWS KMS per decrittografare la chiave della tabella. Quindi, utilizza la chiave di tabella in chiaro per decrittografare le chiavi di crittografia dei dati di Amazon Keyspaces e utilizza le chiavi di crittografia dei dati in testo semplice per decrittografare i dati della tabella.  
Amazon Keyspaces utilizza e archivia la chiave della tabella e le chiavi di crittografia dei dati all'esterno di. AWS KMS Protegge tutte le chiavi con la crittografia [Advanced Encryption Standard](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard) (AES) e le chiavi di crittografia a 256 bit. Quindi, memorizza le chiavi crittografate con i dati crittografati in modo che siano disponibili per decrittografare i dati della tabella su richiesta.

**Caching della chiave della tabella**  
Per evitare di richiedere AWS KMS ogni operazione di Amazon Keyspaces, Amazon Keyspaces memorizza nella cache le chiavi della tabella in testo semplice per ogni connessione in memoria. Se Amazon Keyspaces riceve una richiesta per la chiave della tabella memorizzata nella cache dopo cinque minuti di inattività, invia una nuova richiesta per AWS KMS decrittografare la chiave della tabella. Questa chiamata acquisisce tutte le modifiche apportate alle politiche di accesso della chiave KMS in AWS KMS or AWS Identity and Access Management (IAM) dall'ultima richiesta di decrittografia della chiave della tabella.

**Crittografia envelope**  
Se modifichi la chiave gestita dal cliente per la tua tabella, Amazon Keyspaces genera una nuova chiave di tabella. Quindi, utilizza la nuova chiave di tabella per crittografare nuovamente le chiavi di crittografia dei dati. Utilizza inoltre la nuova chiave di tabella per crittografare le chiavi di tabella precedenti utilizzate per proteggere i backup ripristinabili. Questo processo è chiamato crittografia a busta. In questo modo è possibile accedere ai backup ripristinabili anche ruotando la chiave gestita dal cliente. *Per ulteriori informazioni sulla crittografia delle buste, consulta Envelope Encryption nella [Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#enveloping).AWS Key Management Service *

**Topics**
+ [AWS chiavi possedute](#keyspaces-owned)
+ [Chiavi gestite dal cliente](#customer-managed)
+ [Note sull'utilizzo di Encryption at Rest](#encryption.usagenotes)

## AWS chiavi possedute
<a name="keyspaces-owned"></a>

Chiavi di proprietà di AWS non sono archiviati nel tuo Account AWS. Fanno parte di una raccolta di chiavi KMS che AWS possiede e gestisce per essere utilizzate in più Account AWS lingue. AWS i servizi possono essere utilizzati Chiavi di proprietà di AWS per proteggere i tuoi dati.

Non puoi visualizzare, gestire Chiavi di proprietà di AWS, utilizzare o controllare il loro utilizzo. Tuttavia, non è necessario eseguire alcuna operazione o modificare alcun programma per proteggere le chiavi che crittografano i dati.

Non ti viene addebitato un canone mensile o un canone di utilizzo per l'utilizzo di Chiavi di proprietà di AWS e questi non vengono conteggiati nelle AWS KMS quote per il tuo account.

## Chiavi gestite dal cliente
<a name="customer-managed"></a>

Le chiavi gestite dal cliente sono chiavi Account AWS che crei, possiedi e gestisci. Hai il pieno controllo su queste chiavi KMS. 

Utilizza una chiave gestita dal cliente per ottenere le seguenti caratteristiche:
+ Crei e gestisci la chiave gestita dal cliente, inclusa l'impostazione e la manutenzione delle [politiche chiave, delle politiche](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) [IAM](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html) e le [concessioni](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) per il controllo dell'accesso alla chiave gestita dal cliente. È possibile [abilitare e disabilitare](https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) la chiave gestita dal cliente, abilitare e disabilitare la [rotazione automatica delle chiavi](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) e [pianificare l'eliminazione della chiave gestita dal cliente](https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html) quando non è più in uso. Puoi creare tag e alias per le chiavi gestite dal cliente che gestisci.
+ L’utente può utilizzare una chiave gestita dal cliente con [materiale di chiave importato](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) o una chiave gestita dal cliente in un [archivio di chiavi personalizzate](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html) di cui è proprietario e gestirlo. 
+ Puoi utilizzare AWS CloudTrail Amazon CloudWatch Logs per tenere traccia delle richieste a cui Amazon Keyspaces invia AWS KMS per tuo conto. Per ulteriori informazioni, consulta [Fase 6: Configurare il monitoraggio con AWS CloudTrail](encryption.customermanaged.md#encryption-cmk-trail).

Le chiavi gestite dal cliente [comportano un addebito](https://aws.amazon.com/kms/pricing/) per ogni chiamata API e a queste chiavi KMS vengono applicate delle AWS KMS quote. Per ulteriori informazioni, consulta le [AWS KMS risorse](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html) o richiedi quote.

Quando si specifica una chiave gestita dal cliente come chiave di crittografia principale per una tabella, i backup ripristinabili vengono crittografati con la stessa chiave di crittografia specificata per la tabella al momento della creazione del backup. Se la chiave KMS per la tabella viene ruotata, l'avvolgimento delle chiavi garantisce che la chiave KMS più recente abbia accesso a tutti i backup ripristinabili.

Amazon Keyspaces deve avere accesso alla tua chiave gestita dal cliente per fornirti l'accesso ai dati delle tabelle. Se lo stato della chiave di crittografia è impostato su disabilitato o se ne è pianificata l'eliminazione, Amazon Keyspaces non è in grado di crittografare o decrittografare i dati. Di conseguenza, non sei in grado di eseguire operazioni di lettura e scrittura sulla tabella. Non appena il servizio rileva che la tua chiave di crittografia è inaccessibile, Amazon Keyspaces invia una notifica e-mail per avvisarti. 

È necessario ripristinare l'accesso alla chiave di crittografia entro sette giorni, altrimenti Amazon Keyspaces eliminerà automaticamente la tabella. Per precauzione, Amazon Keyspaces crea un backup ripristinabile dei dati della tabella prima di eliminarla. Amazon Keyspaces mantiene il backup ripristinabile per 35 giorni. Dopo 35 giorni, non puoi più ripristinare i dati della tabella. Il backup ripristinabile non ti viene addebitato, ma vengono [applicate le tariffe di ripristino](https://aws.amazon.com/keyspaces/pricing) standard. 

Puoi utilizzare questo backup ripristinabile per ripristinare i dati in una nuova tabella. Per avviare il ripristino, è necessario abilitare l'ultima chiave gestita dal cliente utilizzata per la tabella e Amazon Keyspaces deve potervi accedere.

**Nota**  
Quando crei una tabella crittografata utilizzando una chiave gestita dal cliente inaccessibile o pianificata per l'eliminazione prima del completamento del processo di creazione, si verifica un errore. L'operazione di creazione della tabella non riesce e ti viene inviata una notifica via e-mail.

## Note sull'utilizzo di Encryption at Rest
<a name="encryption.usagenotes"></a>

Considera quanto segue quando utilizzi la crittografia a riposo in Amazon Keyspaces.
+ La crittografia lato server a riposo è abilitata su tutte le tabelle Amazon Keyspaces e non può essere disabilitata. L'intera tabella è crittografata quando è inattiva, non è possibile selezionare colonne o righe specifiche per la crittografia.
+ Per impostazione predefinita, Amazon Keyspaces utilizza una chiave predefinita a servizio singolo (Chiave di proprietà di AWS) per crittografare tutte le tabelle. Se questa chiave non esiste, viene creata per te. Le chiavi predefinite del servizio non possono essere disabilitate. 
+ La crittografia a riposo crittografa i dati solo quando sono statici (a riposo) su un supporto di archiviazione persistente. Se la sicurezza dei dati è un problema per i dati in transito o per i dati in uso, è necessario adottare misure aggiuntive:
  + Dati in transito: tutti i dati in Amazon Keyspaces sono crittografati in transito. Per impostazione predefinita, le comunicazioni da e verso Amazon Keyspaces sono protette utilizzando la crittografia Secure Sockets Layer (SSL) /Transport Layer Security (TLS).
  + Dati in uso: proteggi i dati prima di inviarli ad Amazon Keyspaces utilizzando la crittografia lato client. 
  + Chiavi gestite dal cliente: i dati inattivi nelle tabelle vengono sempre crittografati utilizzando le chiavi gestite dal cliente. Tuttavia, le operazioni che eseguono aggiornamenti atomici di più righe crittografano temporaneamente i dati, utilizzandoli Chiavi di proprietà di AWS durante l'elaborazione. Ciò include le operazioni di eliminazione degli intervalli e le operazioni che accedono simultaneamente a dati statici e non statici.
+ [Una singola chiave gestita dal cliente può avere fino a 50.000 concessioni.](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) Ogni tabella Amazon Keyspaces associata a una chiave gestita dal cliente consuma 2 concessioni. Una concessione viene rilasciata quando la tabella viene eliminata. La seconda concessione viene utilizzata per creare un'istantanea automatica della tabella per proteggerla dalla perdita di dati nel caso in cui Amazon Keyspaces perda l'accesso alla chiave gestita dal cliente per errore. Questa concessione viene rilasciata 42 giorni dopo l'eliminazione della tabella.

# Crittografia dei dati inattivi: come utilizzare le chiavi gestite dal cliente per crittografare le tabelle in Amazon Keyspaces
<a name="encryption.customermanaged"></a>

Puoi utilizzare la console o le istruzioni CQL AWS KMS key per specificare le nuove tabelle e aggiornare le chiavi di crittografia delle tabelle esistenti in Amazon Keyspaces. Il seguente argomento descrive come implementare le chiavi gestite dal cliente per tabelle nuove ed esistenti. 

**Topics**
+ [Prerequisiti: creare una chiave gestita dal cliente utilizzando AWS KMS e concedere le autorizzazioni ad Amazon Keyspaces](#encryption.createCMKMS)
+ [Fase 3: Specificare una chiave gestita dal cliente per una nuova tabella](#encryption.tutorial-creating)
+ [Passaggio 4: Aggiornare la chiave di crittografia di una tabella esistente](#encryption.tutorial-update)
+ [Fase 5: utilizza il contesto di crittografia Amazon Keyspaces nei log](#encryption-context)
+ [Fase 6: Configurare il monitoraggio con AWS CloudTrail](#encryption-cmk-trail)

## Prerequisiti: creare una chiave gestita dal cliente utilizzando AWS KMS e concedere le autorizzazioni ad Amazon Keyspaces
<a name="encryption.createCMKMS"></a>

Prima di poter proteggere una tabella Amazon Keyspaces con una [chiave gestita dal cliente](encryption.howitworks.md#customer-managed), devi prima creare la chiave in AWS Key Management Service (AWS KMS) e quindi autorizzare Amazon Keyspaces a utilizzare quella chiave.

### Fase 1: crea una chiave gestita dal cliente utilizzando AWS KMS
<a name="encryption-create-key"></a>

Per creare una chiave gestita dal cliente da utilizzare per proteggere una tabella Amazon Keyspaces, puoi seguire i passaggi in [Creazione di chiavi KMS con crittografia simmetrica](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) utilizzando la console o l'API. AWS 

### Fase 2: Autorizza l'uso della chiave gestita dal cliente
<a name="encryption-authz"></a>

Prima di poter scegliere una [chiave gestita dal cliente](encryption.howitworks.md#customer-managed) per proteggere una tabella Amazon Keyspaces, le politiche su tale chiave gestita dal cliente devono autorizzare Amazon Keyspaces a utilizzarla per tuo conto. Hai il pieno controllo sulle politiche e sulle concessioni relative alla chiave gestita dal cliente. È possibile fornire queste autorizzazioni in una [policy della chiave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html), in una [policy IAM](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html) o mediante una [concessione](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html).

Amazon Keyspaces non necessita di autorizzazioni aggiuntive per utilizzare l'impostazione predefinita [Chiave di proprietà di AWS](encryption.howitworks.md#keyspaces-owned)per proteggere le tabelle Amazon Keyspaces nel tuo account. AWS 

I seguenti argomenti mostrano come configurare le autorizzazioni richieste utilizzando le policy e le concessioni IAM che consentono alle tabelle Amazon Keyspaces di utilizzare una chiave gestita dal cliente.

**Topics**
+ [Politica chiave per le chiavi gestite dai clienti](#encryption-customer-managed-policy)
+ [Esempi di policy delle chiavi](#encryption-customer-managed-policy-sample)
+ [Utilizzo delle sovvenzioni per autorizzare Amazon Keyspaces](#encryption-grants)

#### Politica chiave per le chiavi gestite dai clienti
<a name="encryption-customer-managed-policy"></a>

Quando selezioni una [chiave gestita dal cliente](encryption.howitworks.md#customer-managed) per proteggere una tabella Amazon Keyspaces, Amazon Keyspaces ottiene l'autorizzazione a utilizzare la chiave gestita dal cliente per conto del principale che effettua la selezione. Tale principale, un utente o un ruolo, deve disporre delle autorizzazioni sulla chiave gestita dal cliente richieste da Amazon Keyspaces. 

Amazon Keyspaces richiede almeno le seguenti autorizzazioni su una chiave gestita dal cliente:
+ [kms:Encrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
+ [kms:Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
+ [kms: ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html) \$1 (per e) kms: ReEncryptFrom kms: ReEncryptTo
+ [kms: GenerateDataKey \$1 (per [kms: GenerateDataKey e kms:](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)) GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext.html)
+ [km: DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)
+ [km: CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)

#### Esempi di policy delle chiavi
<a name="encryption-customer-managed-policy-sample"></a>

Ad esempio, la policy della chiave di esempio riportata di seguito fornisce solo le autorizzazioni necessarie. La policy ha i seguenti effetti:
+ Consente ad Amazon Keyspaces di utilizzare la chiave gestita dal cliente nelle operazioni crittografiche e creare sovvenzioni, ma solo quando agisce per conto dei responsabili dell'account che dispongono dell'autorizzazione a utilizzare Amazon Keyspaces. Se i responsabili specificati nell'informativa non sono autorizzati a utilizzare Amazon Keyspaces, la chiamata ha esito negativo, anche se proviene dal servizio Amazon Keyspaces. 
+ La chiave [kms: ViaService](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service) condition consente le autorizzazioni solo quando la richiesta proviene da Amazon Keyspaces per conto dei principali elencati nell'informativa. Tali entità principali non possono chiamare direttamente queste operazioni. Nota: il valore `kms:ViaService`,`cassandra.*.amazonaws.com`, ha un asterisco (\$1) nella posizione Regione. Amazon Keyspaces richiede l'autorizzazione per essere indipendente da qualsiasi particolare. Regione AWS
+ Fornisce agli amministratori delle chiavi gestite dal cliente (utenti che possono assumere il `db-team` ruolo) l'accesso in sola lettura alla chiave gestita dal cliente e l'autorizzazione a revocare le concessioni, incluse le concessioni richieste da [Amazon Keyspaces](#encryption-grants) per proteggere la tabella.
+ Fornisce ad Amazon Keyspaces l'accesso in sola lettura alla chiave gestita dal cliente. In questo caso, Amazon Keyspaces può richiamare direttamente queste operazioni. Non deve agire per conto del responsabile del conto.

Prima di utilizzare una politica chiave di esempio, sostituisci i principali di esempio con i principali effettivi del tuo. Account AWS

```
{
  "Id": "key-policy-cassandra",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid" : "Allow access through Amazon Keyspaces for all principals in the account that are authorized to use Amazon Keyspaces",
      "Effect": "Allow",
      "Principal": {"AWS": "arn:aws:iam::111122223333:user/db-lead"},
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey",
        "kms:CreateGrant"
      ],
      "Resource": "*",      
      "Condition": { 
         "StringLike": {
           "kms:ViaService" : "cassandra.*.amazonaws.com"
         }
      }
    },
    {
      "Sid":  "Allow administrators to view the customer managed key and revoke grants",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/db-team"
       },
      "Action": [
        "kms:Describe*",
        "kms:Get*",
        "kms:List*",
        "kms:RevokeGrant"
      ],
      "Resource": "*"
    }
  ]
}
```

#### Utilizzo delle sovvenzioni per autorizzare Amazon Keyspaces
<a name="encryption-grants"></a>

Oltre alle politiche chiave, Amazon Keyspaces utilizza le concessioni per impostare le autorizzazioni su una chiave gestita dal cliente. Per visualizzare le concessioni della chiave gestita dal cliente nell'account, utilizza l'operazione [ListGrants](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListGrants.html). Amazon Keyspaces non necessita di concessioni o autorizzazioni aggiuntive per utilizzarlo per [Chiave di proprietà di AWS](encryption.howitworks.md#keyspaces-owned)proteggere la tabella.

Amazon Keyspaces utilizza le autorizzazioni di concessione quando esegue attività di manutenzione del sistema in background e di protezione continua dei dati. Utilizza inoltre concessioni per generare le chiavi delle tabelle.

Ogni concessione è specifica di una tabella. Se l'account include più tabelle crittografate con la stessa chiave gestita dal cliente, è prevista una concessione di ogni tipo per ogni tabella. La concessione è vincolata dal [contesto di crittografia Amazon Keyspaces](https://docs.aws.amazon.com/kms/latest/developerguide/encryption-context.html), che include il nome della tabella e l'ID. Account AWS La concessione include l'autorizzazione a [ritirarla](https://docs.aws.amazon.com/kms/latest/APIReference/API_RetireGrant.html) se non è più necessaria. 

Per creare le concessioni, Amazon Keyspaces deve disporre dell'autorizzazione a effettuare `CreateGrant` chiamate per conto dell'utente che ha creato la tabella crittografata.

La policy delle chiavi può anche consentire all'account di [revocare la concessione](https://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html) sulla chiave gestita dal cliente. Tuttavia, se revochi la concessione su una tabella crittografata attiva, Amazon Keyspaces non sarà in grado di proteggere e mantenere la tabella.

## Fase 3: Specificare una chiave gestita dal cliente per una nuova tabella
<a name="encryption.tutorial-creating"></a>

Segui questi passaggi per specificare la chiave gestita dal cliente su una nuova tabella utilizzando la console Amazon Keyspaces o CQL.

### Crea una tabella crittografata utilizzando una chiave gestita dal cliente (console)
<a name="encryption.tutorial-console"></a>

1. [Accedi a e apri Console di gestione AWS la console Amazon Keyspaces a casahttps://console.aws.amazon.com/keyspaces/.](https://console.aws.amazon.com/keyspaces/home)

1. Nel pannello di navigazione, scegli **Tabelle**, quindi seleziona **Crea tabella**.

1. **Nella pagina Crea tabella**, nella sezione **Dettagli della tabella**, seleziona un keyspace e fornisci un nome per la nuova tabella.

1. Nella sezione **Schema**, crea lo schema per la tua tabella.

1. Nella sezione **Impostazioni tabella**, scegli **Personalizza impostazioni**.

1. Continua con le **impostazioni di crittografia**.

   In questo passaggio, si selezionano le impostazioni di crittografia per la tabella. 

   Nella sezione **Encryption at rest**, sotto **Scegli un AWS KMS key**, scegli l'opzione **Scegli una chiave KMS diversa (avanzata)** e nel campo di ricerca scegli AWS KMS key o inserisci un Amazon Resource Name (ARN).
**Nota**  
Se la chiave selezionata non è accessibile o non dispone delle autorizzazioni richieste, consulta la sezione [Risoluzione dei problemi di accesso tramite chiave](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html) nella Guida per gli AWS Key Management Service sviluppatori.

1. Scegli **Create (Crea)** per creare la tabella crittografata. 

### Crea una nuova tabella utilizzando una chiave gestita dal cliente per la crittografia a riposo (CQL)
<a name="encryption.tutorial-cql"></a>

Per creare una nuova tabella che utilizza una chiave gestita dal cliente per la crittografia a riposo, è possibile utilizzare l'`CREATE TABLE`istruzione come illustrato nell'esempio seguente. Assicurati di sostituire la chiave ARN con un ARN per una chiave valida con autorizzazioni concesse ad Amazon Keyspaces.

```
CREATE TABLE my_keyspace.my_table(id bigint, name text, place text STATIC, PRIMARY KEY(id, name)) WITH CUSTOM_PROPERTIES = {
        'encryption_specification':{
                'encryption_type': 'CUSTOMER_MANAGED_KMS_KEY', 
                'kms_key_identifier':'arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111'
            }
    };
```

Se ne ricevi una`Invalid Request Exception`, devi confermare che la chiave gestita dal cliente è valida e che Amazon Keyspaces dispone delle autorizzazioni richieste. Per confermare che la chiave è stata configurata correttamente, consulta [Risoluzione dei problemi di accesso tramite chiave nella Guida](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html) per gli AWS Key Management Service sviluppatori. 

## Passaggio 4: Aggiornare la chiave di crittografia di una tabella esistente
<a name="encryption.tutorial-update"></a>

Puoi anche utilizzare la console Amazon Keyspaces o CQL per modificare le chiavi di crittografia di una tabella esistente tra una Chiave di proprietà di AWS chiave KMS gestita dal cliente in qualsiasi momento.

### Aggiorna una tabella esistente con la nuova chiave gestita dal cliente (console)
<a name="encryption.tutorial-update-console"></a>

1. [Accedi a e apri Console di gestione AWS la console Amazon Keyspaces a casahttps://console.aws.amazon.com/keyspaces/.](https://console.aws.amazon.com/keyspaces/home)

1.  Nel pannello di navigazione, seleziona **Tabelle**.

1. Scegli la tabella che desideri aggiornare, quindi scegli la scheda **Impostazioni aggiuntive**.

1. Nella sezione **Crittografia a riposo**, scegli **Gestisci crittografia** per modificare le impostazioni di crittografia per la tabella.

   In **Scegli un AWS KMS key**, scegli l'opzione **Scegli una chiave KMS diversa (avanzata)** e nel campo di ricerca scegli AWS KMS key o inserisci un Amazon Resource Name (ARN).
**Nota**  
Se la chiave selezionata non è valida, consulta la sezione [Risoluzione dei problemi di accesso tramite chiave nella Guida](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html) per gli AWS Key Management Service sviluppatori.

   In alternativa, puoi sceglierne una Chiave di proprietà di AWS per una tabella crittografata con una chiave gestita dal cliente.

1. Scegli **Salva modifiche** per salvare le modifiche alla tabella. 

### Aggiorna la chiave di crittografia utilizzata per una tabella esistente
<a name="encryption.tutorial-update-cql"></a>

Per modificare la chiave di crittografia di una tabella esistente, si utilizza l'`ALTER TABLE`istruzione per specificare una chiave gestita dal cliente per la crittografia a riposo. Assicurati di sostituire la chiave ARN con un ARN per una chiave valida con autorizzazioni concesse ad Amazon Keyspaces.

```
ALTER TABLE my_keyspace.my_table WITH CUSTOM_PROPERTIES = {     
              'encryption_specification':{ 
                      'encryption_type': 'CUSTOMER_MANAGED_KMS_KEY', 
                      'kms_key_identifier':'arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111'     
                  } 
         };
```

Se ne ricevi una`Invalid Request Exception`, devi confermare che la chiave gestita dal cliente è valida e che Amazon Keyspaces dispone delle autorizzazioni richieste. Per confermare che la chiave è stata configurata correttamente, consulta [Risoluzione dei problemi di accesso tramite chiave nella Guida](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html) per gli AWS Key Management Service sviluppatori. 

Per riportare la chiave di crittografia all'opzione predefinita di crittografia a riposo con Chiavi di proprietà di AWS, è possibile utilizzare l'`ALTER TABLE`istruzione come illustrato nell'esempio seguente.

```
ALTER TABLE my_keyspace.my_table WITH CUSTOM_PROPERTIES = {
                'encryption_specification':{
                      'encryption_type' : 'AWS_OWNED_KMS_KEY' 
                    } 
         };
```

## Fase 5: utilizza il contesto di crittografia Amazon Keyspaces nei log
<a name="encryption-context"></a>

Un [contesto di crittografia](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html) è un set di coppie chiave-valore che contiene dati arbitrari non segreti. Quando includi un contesto di crittografia in una richiesta di crittografia dei dati, associa AWS KMS crittograficamente il contesto di crittografia ai dati crittografati. lo stesso contesto di crittografia sia necessario per decrittografare i dati. 

Amazon Keyspaces utilizza lo stesso contesto di crittografia in tutte le operazioni AWS KMS crittografiche. Se utilizzi una [chiave gestita dal cliente](encryption.howitworks.md#customer-managed) per proteggere la tua tabella Amazon Keyspaces, puoi utilizzare il contesto di crittografia per identificare l'uso della chiave gestita dal cliente nei record e nei log di controllo. [Viene inoltre visualizzato in testo non crittografato nei log, ad esempio in logs for e [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)Amazon Logs. CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) 

Nelle sue richieste a AWS KMS, Amazon Keyspaces utilizza un contesto di crittografia con tre coppie chiave-valore.

```
"encryptionContextSubset": {
    "aws:cassandra:keyspaceName": "my_keyspace",
    "aws:cassandra:tableName": "mytable"
    "aws:cassandra:subscriberId": "111122223333"
}
```
+ **Keyspace**: la prima coppia chiave-valore identifica lo spazio chiave che include la tabella che Amazon Keyspaces sta crittografando. La chiave è `aws:cassandra:keyspaceName`. Il valore è il nome del keyspace.

  ```
  "aws:cassandra:keyspaceName": "<keyspace-name>"
  ```

  Esempio:

  ```
  "aws:cassandra:keyspaceName": "my_keyspace"
  ```
+ **Tabella**: la seconda coppia chiave-valore identifica la tabella che Amazon Keyspaces sta crittografando. La chiave è `aws:cassandra:tableName`. Il valore è il nome della tabella.

  ```
  "aws:cassandra:tableName": "<table-name>"
  ```

  Esempio:

  ```
  "aws:cassandra:tableName": "my_table"
  ```
+ **Account**: la terza coppia chiave-valore identifica il. Account AWS La chiave è `aws:cassandra:subscriberId`. Il valore è l'ID dell'account.

  ```
  "aws:cassandra:subscriberId": "<account-id>"
  ```

  Esempio:

  ```
  "aws:cassandra:subscriberId": "111122223333"
  ```

## Fase 6: Configurare il monitoraggio con AWS CloudTrail
<a name="encryption-cmk-trail"></a>

Se utilizzi una [chiave gestita dal cliente](encryption.howitworks.md#customer-managed) per proteggere le tue tabelle Amazon Keyspaces, puoi utilizzare AWS CloudTrail i log per tenere traccia delle richieste a cui Amazon Keyspaces invia per tuo conto. AWS KMS 

Le `CreateGrant` richieste`GenerateDataKey`, `DescribeKey``Decrypt`, e vengono discusse in questa sezione. Inoltre, Amazon Keyspaces utilizza un'[RetireGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_RetireGrant.html)operazione per rimuovere una concessione quando elimini una tabella. 

**Nota**  
Quando lavori con Amazon Keyspaces, alcune operazioni possono generare CloudTrail eventi con un `invokedBy` campo di. `dynamodb.amazonaws.com` Ciò è previsto e si verifica perché Amazon Keyspaces si integra con Amazon DynamoDB per fornire il proprio servizio.

**GenerateDataKey**  
Amazon Keyspaces crea una chiave di tabella unica per crittografare i dati inattivi. Invia una *[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)*richiesta a AWS KMS che specifica la chiave KMS per la tabella.   
L’evento che registra l’operazione `GenerateDataKey` è simile a quello del seguente evento di esempio. L'utente è l'account del servizio Amazon Keyspaces. I parametri includono l'Amazon Resource Name (ARN) della chiave gestita dal cliente, un identificatore di chiave che richiede una chiave a 256 bit e il [contesto di crittografia](#encryption-context) che identifica lo spazio delle chiavi, la tabella e il. Account AWS  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T04:56:05Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "keySpec": "AES_256",
        "encryptionContext": {
            "aws:cassandra:keyspaceName": "my_keyspace",
            "aws:cassandra:tableName": "my_table",
            "aws:cassandra:subscriberId": "123SAMPLE012"
        },
        "keyId": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
    },
    "responseElements": null,
    "requestID": "5e8e9cb5-9194-4334-aacc-9dd7d50fe246",
    "eventID": "49fccab9-2448-4b97-a89d-7d5c39318d6f",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012",
    "sharedEventID": "84fbaaf0-9641-4e32-9147-57d2cb08792e"
}
```

**DescribeKey**  
Amazon Keyspaces utilizza un'[DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)operazione per determinare se la chiave KMS selezionata esiste nell'account e nella regione.   
L’evento che registra l’operazione `DescribeKey` è simile a quello del seguente evento di esempio. L'utente è l'account del servizio Amazon Keyspaces. I parametri includono l'ARN della chiave gestita dal cliente e un identificatore di chiave che richiede una chiave a 256 bit.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "AIDAZ3FNIIVIZZ6H7CFQG",
        "arn": "arn:aws:iam::123SAMPLE012:user/admin",
        "accountId": "123SAMPLE012",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "userName": "admin",
        "sessionContext": {
            "sessionIssuer": {},
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-16T04:55:42Z"
            }
        },
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T04:55:58Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "keyId": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
    },
    "responseElements": null,
    "requestID": "c25a8105-050b-4f52-8358-6e872fb03a6c",
    "eventID": "0d96420e-707e-41b9-9118-56585a669658",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012"
}
```

**Decrypt**  
Quando accedi a una tabella Amazon Keyspaces, Amazon Keyspaces deve decrittografare la chiave della tabella in modo da poter decrittografare le chiavi sottostanti nella gerarchia. Quindi decrittografa i dati nella tabella. Per decrittografare la chiave della tabella, Amazon Keyspaces invia una richiesta [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) a AWS KMS che specifica la chiave KMS per la tabella.  
L’evento che registra l’operazione `Decrypt` è simile a quello del seguente evento di esempio. L'utente è il tuo principale che accede alla tabella. Account AWS I parametri includono la chiave crittografata della tabella (come blob di testo cifrato) e il [contesto di crittografia](#encryption-context) che identifica la tabella e il. Account AWS AWS KMS ricava l'ID della chiave gestita dal cliente dal testo cifrato.   

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T05:29:44Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "encryptionContext": {
            "aws:cassandra:keyspaceName": "my_keyspace",
            "aws:cassandra:tableName": "my_table",
            "aws:cassandra:subscriberId": "123SAMPLE012"
        },
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "50e80373-83c9-4034-8226-5439e1c9b259",
    "eventID": "8db9788f-04a5-4ae2-90c9-15c79c411b6b",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012",
    "sharedEventID": "7ed99e2d-910a-4708-a4e3-0180d8dbb68e"
}
```

**CreateGrant**  
Quando utilizzi una [chiave gestita dal cliente](encryption.howitworks.md#customer-managed) per proteggere la tua tabella Amazon Keyspaces, Amazon Keyspaces utilizza le [concessioni](#encryption-grants) per consentire al servizio di eseguire attività continue di protezione dei dati, manutenzione e durabilità. Queste sovvenzioni non sono obbligatorie. [Chiavi di proprietà di AWS](encryption.howitworks.md#keyspaces-owned)  
Le concessioni create da Amazon Keyspaces sono specifiche per una tabella. Il principale della [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)richiesta è l'utente che ha creato la tabella.   
L’evento che registra l’operazione `CreateGrant` è simile a quello del seguente evento di esempio. I parametri includono l'ARN della chiave gestita dal cliente per la tabella, il principale beneficiario e il principale ritirante (il servizio Amazon Keyspaces) e le operazioni coperte dalla sovvenzione. [Include anche un vincolo che richiede che tutte le operazioni di crittografia utilizzino il contesto di crittografia specificato.](#encryption-context)  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "AIDAZ3FNIIVIZZ6H7CFQG",
        "arn": "arn:aws:iam::arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111:user/admin",
        "accountId": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111",
        "accessKeyId": "AKIAI44QH8DHBEXAMPLE",
        "userName": "admin",
        "sessionContext": {
            "sessionIssuer": {},
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-16T04:55:42Z"
            }
        },
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2021-04-16T05:11:10Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "CreateGrant",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "keyId": "a7d328af-215e-4661-9a69-88c858909f20",
        "operations": [
            "DescribeKey",
            "GenerateDataKey",
            "Decrypt",
            "Encrypt",
            "ReEncryptFrom",
            "ReEncryptTo",
            "RetireGrant"
        ],
        "constraints": {
            "encryptionContextSubset": {
                "aws:cassandra:keyspaceName": "my_keyspace",
                "aws:cassandra:tableName": "my_table",
                "aws:cassandra:subscriberId": "123SAMPLE012"
            }
        },
        "retiringPrincipal": "cassandratest.us-east-1.amazonaws.com",
        "granteePrincipal": "cassandratest.us-east-1.amazonaws.com"
    },
    "responseElements": {
        "grantId": "18e4235f1b07f289762a31a1886cb5efd225f069280d4f76cd83b9b9b5501013"
    },
    "requestID": "b379a767-1f9b-48c3-b731-fb23e865e7f7",
    "eventID": "29ee1fd4-28f2-416f-a419-551910d20291",
    "readOnly": false,
    "resources": [
        {
            "accountId": "123SAMPLE012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "123SAMPLE012"
}
```