Ações, recursos e chaves de condição do AWS Key Management Service - Referência de autorização do serviço

Ações, recursos e chaves de condição do AWS Key Management Service

O AWS Key Management Service (prefixo de serviço: kms) fornece os seguintes recursos, ações e chaves de contexto de condição específicos do serviço para uso nas políticas de permissão do IAM.

Referências:

Ações definidas pelo AWS Key Management Service

Você pode especificar as seguintes ações no elemento Action de uma declaração de política do IAM. Use políticas para conceder permissões para executar uma operação na AWS. Quando usa uma ação em uma política, você geralmente permite ou nega acesso à operação da API ou ao comando da CLI com o mesmo nome. No entanto, em alguns casos, uma única ação controla o acesso a mais de uma operação. Como alternativa, algumas operações exigem várias ações diferentes.

A coluna Resource types (Tipos de recursos) indica se cada ação é compatível com permissões no nível do recurso. Se não houver valor para essa coluna, você deverá especificar todos os recursos ("*") no elemento Resource de sua declaração de política. Se a coluna incluir um tipo de recurso, você poderá especificar um ARN desse tipo em uma declaração com essa ação. Os recursos obrigatórios são indicados na tabela com um asterisco (*). Se você especificar um ARN de permissão no nível do recurso em uma instrução que esteja usando essa ação, ele deverá ser desse tipo. Algumas ações oferecem suporte a vários tipos de recursos. Se o tipo de recurso for opcional (não indicado como obrigatório), você poderá optar por usar um, mas não o outro.

Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de ações.

Ações Descrição Nível de acesso Tipos de recursos (*necessários) Chaves de condição Ações dependentes
CancelKeyDeletion Controla a permissão para cancelar a exclusão programada de uma chave KMS da AWS Write

key*

kms:CallerAccount

kms:ViaService

ConnectCustomKeyStore Controla a permissão para conectar ou reconectar um armazenamento de chaves personalizado ao cluster associado do AWS CloudHSM Write

kms:CallerAccount

CreateAlias Controla a permissão para criar um alias para uma chave KMS da AWS. Aliases são nomes amigáveis opcionais que você pode associar às chaves KMS Write

alias*

key*

kms:CallerAccount

kms:ViaService

CreateCustomKeyStore Controla a permissão para criar um armazenamento de chaves personalizado associado a um cluster do AWS CloudHSM que você possua e gerencie Write

kms:CallerAccount

cloudhsm:DescribeClusters

iam:CreateServiceLinkedRole

CreateGrant Controla a permissão para adicionar uma concessão a uma chave KMS da AWS. Você pode usar concessões para adicionar permissões sem alterar a política de chaves ou a política do IAM Permissions management

key*

kms:CallerAccount

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:GrantConstraintType

kms:GranteePrincipal

kms:GrantIsForAWSResource

kms:GrantOperations

kms:RetiringPrincipal

kms:ViaService

CreateKey Controla a permissão para criar chave do AWS KMS que pode ser usada para proteger chaves de dados e outras informações sigilosas Write

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

kms:BypassPolicyLockoutSafetyCheck

kms:CallerAccount

kms:KeySpec

kms:KeyUsage

kms:KeyOrigin

kms:MultiRegion

kms:MultiRegionKeyType

kms:ViaService

iam:CreateServiceLinkedRole

kms:PutKeyPolicy

kms:TagResource

Decrypt Controla a permissão para descriptografar texto cifrado que foi criptografado com uma chave KMS da AWS Write

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:RecipientAttestation:ImageSha384

kms:RequestAlias

kms:ViaService

DeleteAlias Controla a permissão para excluir um alias. Aliases são nomes amigáveis opcionais que você pode associar às chaves KMS da AWS Write

alias*

key*

kms:CallerAccount

kms:ViaService

DeleteCustomKeyStore Controla a permissão para excluir um armazenamento de chaves personalizado Write

kms:CallerAccount

DeleteImportedKeyMaterial Controla a permissão para excluir material criptográfico que você importou para uma chave KMS da AWS. Esta ação torna a chave inutilizável Write

key*

kms:CallerAccount

kms:ViaService

DescribeCustomKeyStores Controla a permissão para exibir informações detalhadas sobre armazenamentos de chaves personalizadas na conta e região Read

kms:CallerAccount

DescribeKey Controla a permissão para visualizar informações detalhadas sobre uma chave KMS da AWS Read

key*

kms:CallerAccount

kms:RequestAlias

kms:ViaService

DisableKey Controla a permissão para desabilitar uma chave KMS da AWS, o que impede que ela seja usada em operações criptográficas Write

key*

kms:CallerAccount

kms:ViaService

DisableKeyRotation Controla a permissão para desabilitar a alternância automática de uma chave do AWS KMS gerenciada pelo cliente Write

key*

kms:CallerAccount

kms:ViaService

DisconnectCustomKeyStore Controla a permissão para desconectar o armazenamento de chaves personalizadas do cluster associado do AWS CloudHSM Write

kms:CallerAccount

EnableKey Controla a permissão para alterar o estado de uma chave do AWS KMS para habilitada. Isso permite que a chave KMS seja usada em operações criptográficas Write

key*

kms:CallerAccount

kms:ViaService

EnableKeyRotation Controla a permissão para habilitar a alternância automática do material criptográfico em uma chave KMS da AWS Write

key*

kms:CallerAccount

kms:ViaService

Encrypt Controla a permissão para usar a chave do AWS KMS especificada para criptografar dados e chaves de dados Write

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:RequestAlias

kms:ViaService

GenerateDataKey Controla a permissão para usar a chave do AWS KMS para gerar chaves de dados. Você pode usar as chaves de dados para criptografar dados fora do AWS KMS Write

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:RecipientAttestation:ImageSha384

kms:RequestAlias

kms:ViaService

GenerateDataKeyPair Controla a permissão para usar a chave do AWS KMS para gerar pares de chaves de dados Write

key*

kms:CallerAccount

kms:DataKeyPairSpec

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:RequestAlias

kms:ViaService

GenerateDataKeyPairWithoutPlaintext Controla a permissão para usar a chave do AWS KMS para gerar pares de chaves de dados. Ao contrário da operação GenerateDataKeyPair, esta operação retorna uma chave privada criptografada sem uma cópia de texto simples Write

key*

kms:CallerAccount

kms:DataKeyPairSpec

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:RequestAlias

kms:ViaService

GenerateDataKeyWithoutPlaintext Controla a permissão para usar a chave do AWS KMS para gerar uma chave de dados. Ao contrário da operação GenerateDataKey, esta operação retorna uma chave de dados criptografada sem uma versão em texto simples da chave de dados Write

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:RequestAlias

kms:ViaService

GenerateMac Controla a permissão para usar a chave do AWS KMS para gerar códigos de autenticação de mensagens Write

key*

kms:CallerAccount

kms:MacAlgorithm

kms:RequestAlias

kms:ViaService

GenerateRandom Controla a permissão para obter uma string de bytes aleatória criptograficamente segura do AWS KMS Write

kms:RecipientAttestation:ImageSha384

GetKeyPolicy Controla a permissão para visualizar a política de chaves para a chave do AWS KMS especificada Read

key*

kms:CallerAccount

kms:ViaService

GetKeyRotationStatus Controla a permissão para determinar se a alternância automática de chaves está habilitada na chave KMS da AWS Read

key*

kms:CallerAccount

kms:ViaService

GetParametersForImport Controla a permissão para obter dados necessários para importar material criptográfico para uma chave gerenciada pelo cliente, incluindo uma chave pública e um token de importação Read

key*

kms:CallerAccount

kms:ViaService

kms:WrappingAlgorithm

kms:WrappingKeySpec

GetPublicKey Controla a permissão para baixar a chave pública de uma chave do AWS KMS assimétrica Read

key*

kms:CallerAccount

kms:RequestAlias

kms:ViaService

ImportKeyMaterial Controla a permissão para importar material criptográfico para uma chave KMS da AWS Write

key*

kms:CallerAccount

kms:ExpirationModel

kms:ValidTo

kms:ViaService

ListAliases Controla a permissão para visualizar os alias definidos na conta. Aliases são nomes amigáveis opcionais que você pode associar às chaves KMS da AWS List
ListGrants Controla a permissão para visualizar todas as concessões para uma chave KMS da AWS List

key*

kms:CallerAccount

kms:GrantIsForAWSResource

kms:ViaService

ListKeyPolicies Controla a permissão para visualizar os nomes das políticas de chave para uma chave KMS da AWS List

key*

kms:CallerAccount

kms:ViaService

ListKeys Controla a permissão para visualizar o ID de chave e o nome do recurso da Amazon (ARN) de todas as chaves do AWS KMS na conta List
ListResourceTags Controla a permissão para visualizar todas as etiquetas anexadas a uma chave do AWS KMS List

key*

kms:CallerAccount

kms:ViaService

ListRetirableGrants Controla a permissão para visualizar concessões nas quais a entidade principal especificada é a entidade principal que está sendo desativada. Outros primários talvez consigam retirar a concessão e este principal talvez possa retirar outras concessões List

key*

PutKeyPolicy Controla a permissão para substituir a política de chaves para a chave do AWS KMS especificada Permissions management

key*

kms:BypassPolicyLockoutSafetyCheck

kms:CallerAccount

kms:ViaService

ReEncryptFrom Controla a permissão para descriptografar dados como parte do processo que descriptografa e criptografa novamente os dados no AWS KMS Write

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:ReEncryptOnSameKey

kms:RequestAlias

kms:ViaService

ReEncryptTo Controla a permissão para criptografar dados como parte do processo que descriptografa e criptografa novamente os dados no AWS KMS Write

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContext:${EncryptionContextKey}

kms:EncryptionContextKeys

kms:ReEncryptOnSameKey

kms:RequestAlias

kms:ViaService

ReplicateKey Controla a permissão para replicar uma chave primária de várias regiões Write

key*

iam:CreateServiceLinkedRole

kms:CreateKey

kms:PutKeyPolicy

kms:TagResource

kms:CallerAccount

kms:ReplicaRegion

kms:ViaService

RetireGrant Controla a permissão para desativar uma concessão. A operação RetireGrant geralmente é chamada pelo usuário de concessão após concluir as tarefas que a concessão permitiu que eles realizassem Permissions management

key*

RevokeGrant Controla a permissão para revogar uma concessão, que nega permissão para todas as operações que dependem da concessão Permissions management

key*

kms:CallerAccount

kms:GrantIsForAWSResource

kms:ViaService

ScheduleKeyDeletion Controla a permissão para programar a exclusão de uma chave KMS da AWS Write

key*

kms:CallerAccount

kms:ViaService

Sign Controla a permissão para produzir uma assinatura digital para uma mensagem Write

key*

kms:CallerAccount

kms:MessageType

kms:RequestAlias

kms:SigningAlgorithm

kms:ViaService

SynchronizeMultiRegionKey [somente permissão] Controla o acesso a APIs internas que sincronizam chaves de várias regiões Write

key*

TagResource Controla a permissão para criar ou atualizar etiquetas anexadas a uma chave do AWS KMS Marcação

key*

aws:RequestTag/${TagKey}

aws:TagKeys

kms:CallerAccount

kms:ViaService

UntagResource Controla a permissão para excluir as etiquetas anexadas a uma chave do AWS KMS Marcação

key*

aws:TagKeys

kms:CallerAccount

kms:ViaService

UpdateAlias Controla a permissão para associar um alias a outra chave KMS da AWS. Um alias é um nome amigável opcional que você pode associar a uma chave KMS Write

alias*

key*

kms:CallerAccount

kms:ViaService

UpdateCustomKeyStore Controla a permissão para alterar as propriedades de um armazenamento de chaves personalizado Write

kms:CallerAccount

UpdateKeyDescription Controla a permissão para excluir ou alterar a descrição de uma chave KMS da AWS Write

key*

kms:CallerAccount

kms:ViaService

UpdatePrimaryRegion Controla a permissão para atualizar a região primária de uma chave primária de várias regiões Write

key*

kms:CallerAccount

kms:PrimaryRegion

kms:ViaService

Verify Controla a permissão para usar a chave do AWS KMS especificada para verificar assinaturas digitais Write

key*

kms:CallerAccount

kms:MessageType

kms:RequestAlias

kms:SigningAlgorithm

kms:ViaService

VerifyMac Controla a permissão para usar a chave do AWS KMS para verificar códigos de autenticação de mensagens Write

key*

kms:CallerAccount

kms:MacAlgorithm

kms:RequestAlias

kms:ViaService

Tipos de recursos definidos pelo AWS Key Management Service

Os seguintes tipos de recursos são definidos por este serviço e podem ser usados no elemento Resource de declarações de políticas de permissão do IAM. Cada ação na Tabela de ações identifica os tipos de recursos que podem ser especificados com essa ação. Um tipo de recurso também pode definir quais chaves de condição você pode incluir em uma política. Essas chaves são exibidas na última coluna da tabela. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de tipos de recursos.

Tipos de recursos ARN Chaves de condição
alias arn:${Partition}:kms:${Region}:${Account}:alias/${Alias}
key arn:${Partition}:kms:${Region}:${Account}:key/${KeyId}

aws:ResourceTag/${TagKey}

kms:KeyOrigin

kms:KeySpec

kms:KeyUsage

kms:MultiRegion

kms:MultiRegionKeyType

kms:ResourceAliases

Chaves de condição do AWS Key Management Service

O AWS Key Management Service define as seguintes chaves de condição que podem ser usadas no elemento Condition de uma política do IAM. É possível usar essas chaves para refinar ainda mais as condições sob as quais a declaração de política se aplica. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de chaves de condição.

Para visualizar as chaves de condição globais disponíveis para todos os serviços, consulte Chaves de condição globais disponíveis.

Chaves de condição Descrição Type
aws:RequestTag/${TagKey} Filtra o acesso a operações especificadas do AWS KMS com base na chave e no valor da etiqueta na solicitação String
aws:ResourceTag/${TagKey} Filtra o acesso às operações especificadas do AWS KMS com base em etiquetas atribuídas à chave do AWS KMS String
aws:TagKeys Filtra o acesso a operações especificadas do AWS KMS com base em chaves de etiqueta na solicitação ArrayOfString
kms:BypassPolicyLockoutSafetyCheck Filtra o acesso às operações CreateKey e PutKeyPolicy com base no valor do parâmetro BypassPolicyLockoutSafetyCheck na solicitação Bool
kms:CallerAccount Filtra o acesso às operações especificadas do AWS KMS com base no ID da Conta da AWS do chamador. Você pode usar essa chave de condição para permitir ou negar acesso a todos os usuários e funções do IAM em uma Conta da AWS em uma única instrução de política String
kms:CustomerMasterKeySpec A chave de condição kms:CustomerMasterKeySpec está defasada. Em vez disso, use a chave de condição kms:KeySpec String
kms:CustomerMasterKeyUsage A chave de condição kms:CustomerMasterKeyUsage está defasada. Em vez disso, use a chave de condição kms:KeyUsage String
kms:DataKeyPairSpec Filtra o acesso às operações GenerateDataKeyPair e GenerateDataKeyPairWithoutPlaintext com base no valor do parâmetro KeyPairSpec da solicitação. String
kms:EncryptionAlgorithm Filtra o acesso às operações de criptografia com base no valor do algoritmo de criptografia na solicitação String
kms:EncryptionContext:${EncryptionContextKey} Filtra o acesso a uma chave do AWS KMS simétrica com base no contexto de criptografia em uma operação de criptografia. Essa condição avalia a chave e o valor em cada par de contexto de criptografia de chave-valor String
kms:EncryptionContextKeys Filtra o acesso a uma chave do AWS KMS simétrica com base no contexto de criptografia em uma operação de criptografia. Essa chave de condição avalia somente a chave em cada par de contexto de criptografia de chave-valor ArrayOfString
kms:ExpirationModel Filtra o acesso à operação ImportKeyMaterial com base no valor do parâmetro ExpirationModel na solicitação String
kms:GrantConstraintType Filtra o acesso à operação CreateGrant com base na restrição de concessão na solicitação String
kms:GrantIsForAWSResource Filtra o acesso à operação CreateGrant quando a solicitação vem de um produto da AWS especificado Bool
kms:GrantOperations Filtra o acesso à operação CreateGrant com base nas operações da concessão ArrayOfString
kms:GranteePrincipal Filtra o acesso à operação CreateGrant com base no principal do beneficiário na concessão String
kms:KeyOrigin Filtra o acesso a uma operação de API com base na propriedade Origin da chave do AWS KMS criada ou usada na operação. Use para qualificar a autorização da operação CreateKey ou de qualquer operação autorizada para uma chave KMS String
kms:KeySpec Filtra o acesso a uma operação de API com base na propriedade KeySpec da chave do AWS KMS criada ou usada na operação. Use para qualificar a autorização da operação CreateKey ou de qualquer operação autorizada para um recurso da chave KMS String
kms:KeyUsage Filtra o acesso a uma operação de API com base na propriedade de KeyUsage da chave do AWS KMS criada ou usada na operação. Use para qualificar a autorização da operação CreateKey ou de qualquer operação autorizada para um recurso da chave KMS String
kms:MacAlgorithm Filtra o acesso às operações GenerateMac e VerifyMac com base no parâmetro MacAlgorithm da solicitação String
kms:MessageType Filtra o acesso às operações Sign and Verify com base no valor do parâmetro MessageType na solicitação String
kms:MultiRegion Filtra o acesso a uma operação de API com base na propriedade MultiRegion da chave do AWS KMS criada ou usada na operação. Use para qualificar a autorização da operação CreateKey ou de qualquer operação autorizada para um recurso da chave KMS Bool
kms:MultiRegionKeyType Filtra o acesso a uma operação de API com base na propriedade MultiRegionKeyType da chave do AWS KMS criada ou usada na operação. Use para qualificar a autorização da operação CreateKey ou de qualquer operação autorizada para um recurso da chave KMS String
kms:PrimaryRegion Filtra o acesso à operação UpdatePrimaryRegion com base no valor do parâmetro PrimaryRegion na solicitação String
kms:ReEncryptOnSameKey Filtra o acesso à operação ReEncrypt quando usa a mesma chave do AWS KMS usada para a operação Encrypt Bool
kms:RecipientAttestation:ImageSha384 Filtra o acesso às operações Decrypt, GenerateDataKey e GenerateRandom com base no hash de imagem do documento de atestado da solicitação String
kms:ReplicaRegion Filtra o acesso à operação ReplicateKey com base no valor do parâmetro ReplicaRegion na solicitação String
kms:RequestAlias Filtra o acesso a operações criptográficas, DescribeKey e GetPublicKey com base no alias na solicitação String
kms:ResourceAliases Filtra o acesso às operações do AWS KMS especificadas com base em aliases associados à chave do AWS KMS ArrayOfString
kms:RetiringPrincipal Filtra o acesso à operação CreateGrant com base no principal de retirada na concessão String
kms:SigningAlgorithm Filtra o acesso às operações Sign and Verify com base no algoritmo de assinatura na solicitação String
kms:ValidTo Filtra o acesso à operação ImportKeyMaterial com base no valor do parâmetro ValidTo na solicitação. Você pode usar essa chave de condição para permitir que os usuários importem material de chave somente quando expirar até a data especificada Data
kms:ViaService Filtra o acesso quando uma solicitação feita em nome do principal vem de um serviço da AWS especificado String
kms:WrappingAlgorithm Filtra o acesso à operação GetParametersForImport com base no valor do parâmetro WrappingAlgorithm na solicitação String
kms:WrappingKeySpec Filtra o acesso à operação GetParametersForImport com base no valor do parâmetro WrappingKeySpec na solicitação String