

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

# Esempi di policy IAM
<a name="customer-managed-policies"></a>

Questa sezione include esempi di policy IAM che concedono autorizzazioni per varie azioni AWS KMS .

**Importante**  
Alcune delle autorizzazioni nelle seguenti policy sono consentite solo quando anche la policy delle chiavi della chiave KMS le consente. Per ulteriori informazioni, consulta [Riferimento per le autorizzazioni](kms-api-permissions-reference.md).

Per informazioni sulla scrittura e sulla formattazione di un documento di policy JSON, consulta la [Documentazione di riferimento sulla policy IAM JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) nella *Guida per l'utente di IAM*.

**Topics**
+ [Consenti a un utente di visualizzare le chiavi KMS nella console AWS KMS](#iam-policy-example-read-only-console)
+ [Consentire a un utente di creare chiavi KMS](#iam-policy-example-create-key)
+ [Consenti a un utente di crittografare e decrittografare con qualsiasi chiave KMS in una determinata chiave Account AWS](#iam-policy-example-encrypt-decrypt-one-account)
+ [Consenti a un utente di crittografare e decrittografare con qualsiasi chiave KMS in una regione e in una regione specifiche Account AWS](#iam-policy-example-encrypt-decrypt-one-account-one-region)
+ [Consentire a un utente di eseguire la crittografia e la decrittazione con chiavi KMS specifiche](#iam-policy-example-encrypt-decrypt-specific-cmks)
+ [Impedire a un utente di disabilitare o eliminare le chiavi KMS](#iam-policy-example-deny-disable-delete)

## Consenti a un utente di visualizzare le chiavi KMS nella console AWS KMS
<a name="iam-policy-example-read-only-console"></a>

La seguente policy IAM consente agli utenti l'accesso in sola lettura alla console. AWS KMS Gli utenti con queste autorizzazioni possono visualizzare tutte le chiavi KMS in loro possesso Account AWS, ma non possono creare o modificare alcuna chiave KMS. 

Per visualizzare le chiavi KMS nelle pagine **Chiavi gestite da AWS**e nelle pagine delle **chiavi gestite dal cliente**, i principali richiedono le GetResources autorizzazioni [kms: ListKeys](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListKeys.html), [kms: e [tag: ListAliases](https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/API_GetResources.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListAliases.html), anche se le chiavi non hanno tag o alias. Le autorizzazioni rimanenti, in particolare [kms: DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html), sono necessarie per visualizzare le colonne e i dati opzionali della tabella delle chiavi KMS nelle pagine di dettaglio delle chiavi KMS. Le ListRoles autorizzazioni [iam: ListUsers](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListUsers.html) e [iam:](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListRoles.html) sono necessarie per visualizzare la politica chiave nella visualizzazione predefinita senza errori. Per visualizzare i dati nella pagina **Custom key store** e i dettagli sulle chiavi KMS negli archivi chiavi personalizzati, i mandanti necessitano anche dell'autorizzazione [kms](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html):. DescribeCustomKeyStores

Se limiti l'accesso alla console di un utente a particolari chiavi KMS, la console visualizza un errore per ogni chiave KMS che non è visibile. 

Questa policy include due istruzioni di policy. L'elemento `Resource` nella prima istruzione di policy consente le autorizzazioni specificate per tutte le chiavi KMS in tutte le regioni dell' Account AWS di esempio. I visualizzatori della console non hanno bisogno di un accesso aggiuntivo perché la console AWS KMS visualizza solo le chiavi KMS nell'account del principale. Questo è vero anche se hanno il permesso di visualizzare le chiavi KMS in altri. Account AWS Le autorizzazioni rimanenti AWS KMS e quelle IAM richiedono un `"Resource": "*"` elemento perché non si applicano a nessuna chiave KMS particolare.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "ReadOnlyAccessForAllKMSKeysInAccount",
      "Effect": "Allow",
      "Action": [
        "kms:GetPublicKey",        
        "kms:GetKeyRotationStatus",
        "kms:GetKeyPolicy",
        "kms:DescribeKey",
        "kms:ListKeyPolicies",
        "kms:ListResourceTags",
        "tag:GetResources"
      ],
      "Resource": "arn:aws:kms:*:111122223333:key/*"
    },
    {
      "Sid": "ReadOnlyAccessForOperationsWithNoKMSKey",
      "Effect": "Allow",
      "Action": [
        "kms:ListKeys",
        "kms:ListAliases",
        "iam:ListRoles",
        "iam:ListUsers"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## Consentire a un utente di creare chiavi KMS
<a name="iam-policy-example-create-key"></a>

La seguente policy IAM consente a un utente di creare chiavi KMS di tutti i tipi. Il valore dell'`Resource`elemento è `*` dovuto al fatto che l'`CreateKey`operazione non utilizza AWS KMS risorse particolari (chiavi o alias KMS).

[Per limitare l'utente a particolari tipi di chiavi KMS, usa le chiavi di condizione [kms: KeySpec](conditions-kms.md#conditions-kms-key-spec), [kms: e kms: KeyUsage](conditions-kms.md#conditions-kms-key-usage). KeyOrigin](conditions-kms.md#conditions-kms-key-origin)

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": "kms:CreateKey",
    "Resource": "*"
  }
}
```

------

I principali che creano le chiavi potrebbero richiedere alcune autorizzazioni correlate.
+ **kms: PutKeyPolicy** — I responsabili che dispongono dell'`kms:CreateKey`autorizzazione possono impostare la politica chiave iniziale per la chiave KMS. Tuttavia, il `CreateKey` chiamante deve disporre di [kms: PutKeyPolicy](https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html) permission, che gli consente di modificare la politica della chiave KMS, oppure deve specificare il `BypassPolicyLockoutSafetyCheck` parametro di`CreateKey`, che non è consigliato. Il chiamante `CreateKey` può ottenere l'autorizzazione `kms:PutKeyPolicy` per la chiave KMS da una policy IAM o può includere questa autorizzazione nella policy chiavi della chiave KMS che sta creando.
+ **kms: TagResource** — Per aggiungere tag alla chiave KMS durante l'`CreateKey`operazione, il `CreateKey` chiamante deve disporre dell'autorizzazione [kms](https://docs.aws.amazon.com/kms/latest/APIReference/API_TagResource.html): in una policy IAM. TagResource Includere questa autorizzazione nella policy delle chiavi della nuova chiave KMS non è sufficiente. Tuttavia, se il chiamante `CreateKey` include `kms:TagResource` nella policy delle chiavi iniziale, può aggiungere i tag in una chiamata separata dopo la creazione della chiave KMS.
+ **kms: CreateAlias** — I principali che creano una chiave KMS nella AWS KMS console devono avere l'CreateAliasautorizzazione kms[: sulla chiave KMS](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateAlias.html) e sull'alias. La console effettua due chiamate, una a `CreateKey` e una a `CreateAlias`. È necessario fornire l'autorizzazione per l'alias in una policy IAM. Puoi fornire l'autorizzazione chiave KMS in una policy delle chiavi o in una policy IAM. Per informazioni dettagliate, vedi [Controllo dell'accesso agli alias](alias-access.md).

Inoltre`kms:CreateKey`, la seguente policy IAM fornisce l'`kms:TagResource`autorizzazione su tutte le chiavi KMS presenti nell'account Account AWS e l'autorizzazione su tutti gli alias dell'account`kms:CreateAlias`. Include anche alcune utili autorizzazioni di sola lettura che possono essere fornite solo in una policy IAM. 

Questa policy IAM non include l'autorizzazione `kms:PutKeyPolicy` o altre autorizzazioni che possono essere impostate in una policy delle chiavi. Come [best practice](iam-policies-best-practices.md), è consigliabile impostare queste autorizzazioni nella policy delle chiavi che si applica esclusivamente a una chiave KMS.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "IAMPermissionsForParticularKMSKeys",
      "Effect": "Allow",
      "Action": "kms:TagResource",
      "Resource": "arn:aws:kms:*:111122223333:key/*"
    },
    {
      "Sid": "IAMPermissionsForParticularAliases",
      "Effect": "Allow",
      "Action": "kms:CreateAlias",
      "Resource": "arn:aws:kms:*:111122223333:alias/*"
    },
    {
      "Sid": "IAMPermissionsForAllKMSKeys",
      "Effect": "Allow",
      "Action": [
        "kms:CreateKey",
        "kms:ListKeys",
        "kms:ListAliases"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## Consenti a un utente di crittografare e decrittografare con qualsiasi chiave KMS in una determinata chiave Account AWS
<a name="iam-policy-example-encrypt-decrypt-one-account"></a>

La seguente politica IAM consente a un utente di crittografare e decrittografare i dati con qualsiasi chiave KMS in 111122223333. Account AWS 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "kms:Encrypt",
      "kms:Decrypt"
    ],
    "Resource": "arn:aws:kms:*:111122223333:key/*"
  }
}
```

------

## Consenti a un utente di crittografare e decrittografare con qualsiasi chiave KMS in una regione e in una regione specifiche Account AWS
<a name="iam-policy-example-encrypt-decrypt-one-account-one-region"></a>

La seguente politica IAM consente a un utente di crittografare e decrittografare i dati con qualsiasi chiave KMS Account AWS `111122223333` nella regione Stati Uniti occidentali (Oregon).

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "kms:Encrypt",
      "kms:Decrypt"
    ],
    "Resource": [
      "arn:aws:kms:us-west-2:111122223333:key/*"
    ]
  }
}
```

------

## Consentire a un utente di eseguire la crittografia e la decrittazione con chiavi KMS specifiche
<a name="iam-policy-example-encrypt-decrypt-specific-cmks"></a>

La policy IAM seguente consente a un utente di crittografare e decrittare i dati con le due chiavi KMS specificate nell'elemento `Resource`. Per specificare una chiave KMS in un'istruzione della policy IAM, devi utilizzare l'[ARN chiave](concepts.md#key-id-key-ARN) della chiave KMS.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "kms:Encrypt",
      "kms:Decrypt"
    ],
    "Resource": [
      "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
      "arn:aws:kms:us-west-2:111122223333:key/01234abc-d12a-b34c-d56e-f1234567890a'"
    ]
  }
}
```

------

## Impedire a un utente di disabilitare o eliminare le chiavi KMS
<a name="iam-policy-example-deny-disable-delete"></a>

La policy IAM seguente impedisce a un utente di disabilitare o eliminare le chiavi KMS, anche quando un'altra policy IAM o una policy delle chiavi lo consente. Una policy che nega autorizzazioni in modo esplicito sostituisce tutte le altre policy, anche quelle che concedono le stesse autorizzazioni. Per ulteriori informazioni, consulta [Risoluzione dei problemi relativi alle AWS KMS autorizzazioni](policy-evaluation.md).

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Deny",
    "Action": [
      "kms:DisableKey",
      "kms:ScheduleKeyDeletion"
    ],
    "Resource": "*"
  }
}
```

------