

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

# AWS KMS chiavi di condizione per piattaforme attestate
<a name="conditions-attestation"></a>

AWS KMS fornisce chiavi di condizione per supportare l'attestazione crittografica per [AWS Nitro Enclaves e NitroTPM](https://docs.aws.amazon.com/enclaves/latest/user/). AWS Nitro Enclaves è una funzionalità di Amazon EC2 che consente di creare ambienti di elaborazione isolati chiamati [enclavi](https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-concepts.html#term-enclave) per proteggere ed elaborare dati altamente sensibili. NitroTPM estende funzionalità di attestazione simili alle istanze EC2.

Quando richiami le operazioni [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html),, [DeriveSharedSecret[GenerateDataKey[GenerateDataKeyPair](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPair.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeriveSharedSecret), o [GenerateRandom](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateRandom.html)API con un documento di attestazione firmato, queste APIs crittografano il testo in chiaro nella risposta utilizzando la chiave pubblica del documento di attestazione e restituiscono testo cifrato anziché testo semplice. Questo testo criptato può essere decrittato solo utilizzando la chiave privata nell'enclave. Per ulteriori informazioni, consulta [Supporto per l'attestazione crittografica in AWS KMS](cryptographic-attestation.md).

**Nota**  
Se non fornisci una politica di chiave quando crei una chiave, ne crea una automaticamente. AWS KMS AWS Questa [policy chiave predefinita](key-policy-default.md) concede al proprietario della Account AWS chiave KMS l'accesso completo alla chiave e consente all'account di utilizzare le policy IAM per consentire l'accesso alla chiave. [Questa politica consente tutte le azioni come Decrypt.](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) AWS consiglia di applicare principal of [Autorizzazioni con privilegi minimi](least-privilege.md) alle politiche chiave del KMS. Puoi anche limitare l'accesso [modificando l'azione politica chiave del KMS per](key-policy-modifying.md) to. `kms:*` `[NotAction:](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_notaction.html)kms:Decrypt`

Le seguenti chiavi di condizione consentono di limitare le autorizzazioni per queste operazioni in base al contenuto del documento di attestazione firmato. Prima di consentire un'operazione, AWS KMS confronta il documento di attestazione con i valori di queste chiavi di condizione. AWS KMS 

# Chiavi condizionali per Nitro Enclaves
<a name="conditions-nitro-enclave"></a>

Le seguenti chiavi di condizione sono specifiche dell'attestazione di Nitro Enclaves:

## km: 384 RecipientAttestation ImageSha
<a name="conditions-kms-recipient-image-sha"></a>


| AWS KMS Chiavi di condizione | Tipo di condizioni | Value type (Tipo di valore) | Operazioni API | Tipo di policy | 
| --- | --- | --- | --- | --- | 
|  `kms:RecipientAttestation:ImageSha384`  |  Stringa  | A valore singolo |  `Decrypt` `DeriveSharedSecret` `GenerateDataKey` `GenerateDataKeyPair` `GenerateRandom`  |  Policy delle chiavi e policy IAM  | 

La chiave `kms:RecipientAttestation:ImageSha384` condizionale controlla l'accesso a `Decrypt``DeriveSharedSecret`, `GenerateDataKey``GenerateDataKeyPair`, e `GenerateRandom` con una chiave KMS quando l'immagine digest del documento di attestazione firmato nella richiesta corrisponde al valore nella chiave di condizione. Il `ImageSha384` valore corrisponde a quello riportato PCR0 nel documento di attestazione. Questa chiave condizionale è efficace solo quando il `Recipient` parametro nella richiesta specifica un documento di attestazione firmato per un' AWS enclave Nitro.

Questo valore è incluso anche negli [CloudTraileventi](ct-nitro-enclave.md) per le richieste alle enclavi Nitro. AWS KMS 

Ad esempio, la seguente dichiarazione di policy chiave consente al `data-processing` ruolo di utilizzare la chiave KMS per [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html),,, [DeriveSharedSecret](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeriveSharedSecret)e le operazioni. [GenerateDataKey[GenerateDataKeyPair[GenerateRandom](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateRandom.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPair.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) La chiave `kms:RecipientAttestation:ImageSha384` condition consente le operazioni solo quando il valore dell'immagine digest (PCR0) del documento di attestazione nella richiesta corrisponde al valore dell'immagine digest nella condizione. Questa chiave condizionale è efficace solo quando il `Recipient` parametro nella richiesta specifica un documento di attestazione firmato per un'enclave Nitro. AWS 

Se la richiesta non include un documento di attestazione valido proveniente da un'enclave AWS Nitro, l'autorizzazione viene negata perché questa condizione non è soddisfatta.

```
{
  "Sid" : "Enable enclave data processing",
  "Effect" : "Allow",
  "Principal" : {
    "AWS" : "arn:aws:iam::111122223333:role/data-processing"
  },
  "Action": [
    "kms:Decrypt",
    "kms:DeriveSharedSecret",
    "kms:GenerateDataKey",
    "kms:GenerateDataKeyPair",
    "kms:GenerateRandom"
  ],
  "Resource" : "*",
  "Condition": {
    "StringEqualsIgnoreCase": {
      "kms:RecipientAttestation:ImageSha384": "9fedcba8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef1abcdef0abcdef1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef99"
    }
  }
}
```

## kms: PCR RecipientAttestation <PCR\$1ID>
<a name="conditions-kms-recipient-pcrs"></a>


| AWS KMS Chiavi di condizione | Tipo di condizioni | Value type (Tipo di valore) | Operazioni API | Tipo di policy | 
| --- | --- | --- | --- | --- | 
|  `kms:RecipientAttestation:PCR<PCR_ID>`  |  Stringa  | A valore singolo |  `Decrypt` `DeriveSharedSecret` `GenerateDataKey` `GenerateDataKeyPair` `GenerateRandom`  |  Policy delle chiavi e policy IAM  | 

La chiave `kms:RecipientAttestation:PCR<PCR_ID>` condizionale controlla l'accesso a `Decrypt` `DeriveSharedSecret``GenerateDataKey`,`GenerateDataKeyPair`, e `GenerateRandom` con una chiave KMS solo quando la configurazione della piattaforma registra (PCRs) dal documento di attestazione firmato nella richiesta corrisponde alla PCRs chiave di condizione. Questa chiave condizionale è efficace solo quando il `Recipient` parametro nella richiesta specifica un documento di attestazione firmato da un'enclave Nitro. AWS 

Questo valore è incluso anche negli [CloudTraileventi](ct-nitro-enclave.md) che rappresentano le richieste per le enclavi Nitro. AWS KMS 

Per specificare un valore PCR, utilizzare il formato seguente. Concatena l'ID PCR al nome della chiave di condizione. È possibile specificare un ID PCR che identifichi una delle [sei misurazioni dell'enclave](https://docs.aws.amazon.com/enclaves/latest/user/set-up-attestation.html#where) o un ID PCR personalizzato definito per un caso d'uso specifico. Il valore PCR deve essere una stringa esadecimale minuscola di un massimo di 96 byte.

```
"kms:RecipientAttestation:PCRPCR_ID": "PCR_value"
```

Ad esempio, la seguente chiave condizionale specifica un valore particolare per PCR1, che corrisponde all'hash del kernel utilizzato per l'enclave e il processo di bootstrap.

```
kms:RecipientAttestation:PCR1: "abc1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"
```

Il seguente esempio di istruzione della policy della chiave consente al ruolo `data-processing` di utilizzare la chiave KMS per l'operazione [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html).

La chiave di `kms:RecipientAttestation:PCR` condizione in questa istruzione consente l'operazione solo quando il PCR1 valore nel documento di attestazione firmato nella richiesta corrisponde al valore nella condizione. `kms:RecipientAttestation:PCR1` Usa l'operatore di policy `StringEqualsIgnoreCase` per richiedere un confronto senza distinzione tra maiuscole e minuscole dei valori PCR.

Se la richiesta non include un documento di attestazione, l'autorizzazione viene negata perché questa condizione non è soddisfatta.

```
{
  "Sid" : "Enable enclave data processing",
  "Effect" : "Allow",
  "Principal" : {
    "AWS" : "arn:aws:iam::111122223333:role/data-processing"
  },
  "Action": "kms:Decrypt",
  "Resource" : "*",
  "Condition": {
    "StringEqualsIgnoreCase": {
      "kms:RecipientAttestation:PCR1": "abc1de4f2dcf774f6e3b679f62e5f120065b2e408dcea327bd1c9dddaea6664e7af7935581474844767453082c6f1586116376cede396a30a39a611b9aad7966c87"
    }
  }
}
```

# Chiavi di condizione per NitroTPM
<a name="conditions-nitro-tpm"></a>

Le seguenti chiavi di condizione sono specifiche dell'attestazione NitroTPM:

## kmsRecipientAttestation:: NitroTPMPCR <PCR\$1ID>
<a name="conditions-kms-recipient-nitro-tpm-pcrs"></a>


| AWS KMS Chiavi di condizione | Tipo di condizioni | Value type (Tipo di valore) | Operazioni API | Tipo di policy | 
| --- | --- | --- | --- | --- | 
|  `kms:RecipientAttestation:NitroTPMPCR<PCR_ID>`  |  Stringa  | A valore singolo |  `Decrypt` `DeriveSharedSecret` `GenerateDataKey` `GenerateDataKeyPair` `GenerateRandom`  |  Policy delle chiavi e policy IAM  | 

La chiave `kms:RecipientAttestation:NitroTPMPCR<PCR_ID>` condizionale controlla l'accesso a `Decrypt` `DeriveSharedSecret``GenerateDataKey`,`GenerateDataKeyPair`, e `GenerateRandom` con una chiave KMS solo quando la configurazione della piattaforma registra (PCRs) dal documento di attestazione firmato nella richiesta corrisponde alla PCRs chiave di condizione. Questa chiave condizionale è efficace solo quando il `Recipient` parametro nella richiesta specifica un documento di attestazione firmato da NitroTPM.

Questo valore è incluso anche negli [CloudTraileventi](ct-nitro-tpm.md) che rappresentano le richieste di NitroTPM. AWS KMS 

Per specificare un valore PCR, utilizzare il formato seguente. Concatena l'ID PCR al nome della chiave di condizione. Il valore PCR deve essere una stringa esadecimale minuscola di un massimo di 96 byte.

```
"kms:RecipientAttestation:NitroTPMPCRPCR_ID": "PCR_value"
```

Ad esempio, la seguente chiave condizionale specifica un valore particolare per: PCR4

```
kms:RecipientAttestation:NitroTPMPCR4: "abc1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"
```

Il seguente esempio di istruzione della policy della chiave consente al ruolo `data-processing` di utilizzare la chiave KMS per l'operazione [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html).

La chiave di `kms:RecipientAttestation:NitroTPMPCR` condizione in questa istruzione consente l'operazione solo quando il PCR4 valore nel documento di attestazione firmato nella richiesta corrisponde al `kms:RecipientAttestation:NitroTPMPCR4` valore nella condizione. Usa l'operatore di policy `StringEqualsIgnoreCase` per richiedere un confronto senza distinzione tra maiuscole e minuscole dei valori PCR.

Se la richiesta non include un documento di attestazione, l'autorizzazione viene negata perché questa condizione non è soddisfatta.

```
{
  "Sid" : "Enable NitroTPM data processing",
  "Effect" : "Allow",
  "Principal" : {
    "AWS" : "arn:aws:iam::111122223333:role/data-processing"
  },
  "Action": "kms:Decrypt",
  "Resource" : "*",
  "Condition": {
    "StringEqualsIgnoreCase": {
      "kms:RecipientAttestation:NitroTPMPCR4": "abc1de4f2dcf774f6e3b679f62e5f120065b2e408dcea327bd1c9dddaea6664e7af7935581474844767453082c6f1586116376cede396a30a39a611b9aad7966c87"
    }
  }
}
```