

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Especificando chaves do KMS em instruções de políticas do IAM
<a name="cmks-in-iam-policies"></a>

É possível usar uma política do IAM para permitir que uma entidade principal use ou gerencie chaves do KMS. Chaves do KMS são especificadas no elemento `Resource` da instrução de política. 
+ Para especificar uma chave do KMS em uma instrução de política do IAM, use seu [ARN de chave](concepts.md#key-id-key-ARN). Não é possível usar um [ID de chave](concepts.md#key-id-key-id), um [nome de alias](concepts.md#key-id-alias-name) nem um [ARN de alias](concepts.md#key-id-alias-ARN) para identificar uma chave do KMS em uma instrução de política do IAM. 

  Por exemplo: "`Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`"

  Para controlar o acesso a uma chave KMS com base em seus aliases, use as chaves de condição [kms: RequestAlias](conditions-kms.md#conditions-kms-request-alias) ou [kms](conditions-kms.md#conditions-kms-resource-aliases):. ResourceAliases Para obter detalhes, consulte [ABAC para AWS KMS](abac.md).

  Use um alias ARN como recurso somente em uma declaração de política que controle o acesso às operações de alias, [CreateAlias](https://docs.aws.amazon.com/kms/latest/APIReference/CreateAlias.html)como [UpdateAlias](https://docs.aws.amazon.com/kms/latest/APIReference/UpdateAlias.html), ou. [DeleteAlias](https://docs.aws.amazon.com/kms/latest/APIReference/DeleteAlias.html) Para obter detalhes, consulte [Controlar o acesso a aliases](alias-access.md).
+ Para especificar várias chaves do KMS na conta e região, use caracteres curinga (\*) nas posições de Região ou ID de recurso do ARN de chave. 

  Por exemplo, para especificar todas as chaves do KMS na região Oeste dos EUA (Oregon) de uma conta, use ”`Resource": "arn:aws:kms:us-west-2:111122223333:key/*`“. Para especificar todas as chaves do KMS em todas as regiões da conta, use "`Resource": "arn:aws:kms:*:111122223333:key/*`".
+ Para representar todas as chaves do KMS, use um caractere curinga sozinho (`"*"`). Use esse formato para operações que não usam nenhuma chave KMS específica, a saber [CreateKey[GenerateRandom](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateRandom.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html), [ListAliases](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListAliases.html), e. [ListKeys](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListKeys.html)

Ao escrever suas instruções de política, é uma [prática recomendada](iam-policies-best-practices.md) limitar as chaves do KMS àquelas que as entidades principais precisam usar, em vez de conceder acesso a todas as chaves do KMS. 

Por exemplo, a declaração de política do IAM a seguir permite que o diretor chame as operações [DescribeKey[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html),, [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) somente nas chaves KMS listadas no `Resource` elemento da declaração de política. Especificar chaves do KMS por ARN de chave, que é uma prática recomendada, garante que as permissões sejam limitadas apenas às chaves do KMS especificadas.

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

****  

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

------

Para aplicar a permissão a todas as chaves KMS em um determinado local confiável Conta da AWS, você pode usar caracteres curinga (\*) na região e nas posições de ID da chave. Por exemplo, a instrução de política a seguir permite que a entidade principal chame as operações especificadas em quaisquer chaves do KMS em duas contas confiáveis demonstrativas.

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

****  

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

------

Também é possível usar um caractere curinga (`"*"`) sozinho no elemento `Resource`. Como ela permite o acesso a todas as chaves do KMS que a conta tem permissão para usar, é recomendável principalmente para operações que não envolvam uma chaves do KMS específica e para instruções `Deny`. Você também pode usá-lo em declarações de política que permitam apenas operações somente leitura menos confidenciais. Para determinar se uma AWS KMS operação envolve uma chave KMS específica, procure o valor da **chave KMS** na coluna **Recursos** da tabela em. [AWS KMS permissões](kms-api-permissions-reference.md)

Por exemplo, a instrução de política a seguir usa um efeito `Deny` para proibir as entidades principais de usar as operações especificadas em qualquer chave do KMS. Ela usa um caractere curinga no elemento `Resource` para representar todas as chaves do KMS.

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

****  

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

------

A instrução de política a seguir usa um caractere curinga isoladamente para representar todas as chaves do KMS. Porém, ela permite apenas operações menos confidenciais somente leitura e operações que não se aplicam a uma chave do KMS específica.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Effect": "Allow",
    "Action": [
      "kms:CreateKey",
      "kms:ListKeys",
      "kms:ListAliases",
      "kms:ListResourceTags"
    ],
    "Resource": "*"
  }
}
```

------