AWS KMS conceitos - AWS Key Management Service

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

AWS KMS conceitos

Aprenda os termos e conceitos básicos usados em AWS Key Management Service (AWS KMS) e como eles trabalham juntos para ajudar a proteger seus dados.

AWS KMS keys

AWS KMS keys (KMSchaves) são o principal recurso em AWS KMS. Você pode usar uma KMS chave para criptografar, descriptografar e recriptografar dados. Ele também pode gerar chaves de dados que você pode usar fora do AWS KMS. Normalmente, você usa KMSchaves de criptografia simétricas, mas pode criar e usar KMSchaves assimétricas para criptografia ou assinatura, além de criar e usar HMACKMSchaves para gerar e verificar tags. HMAC

nota

AWS KMS está substituindo o termo chave mestra do cliente (CMK) por AWS KMS keye KMSchave. O conceito não mudou. Para evitar alterações significativas, AWS KMS está mantendo algumas variações desse termo.

Um AWS KMS keyé uma representação lógica de uma chave criptográfica. Uma KMS chave contém metadados, como ID da chave, especificação da chave, uso da chave, data de criação, descrição e estado da chave. Mais importante ainda, ele contém uma referência ao material chave usado quando você executa operações criptográficas com a KMS chave.

Você pode criar uma KMS chave com material de chave criptográfica gerado em AWS KMS FIPSmódulos de segurança de hardware validados. O material chave para chaves simétricas e KMS as chaves privadas da chave assimétrica nunca sai KMS AWS KMS não criptografado. Para usar ou gerenciar suas KMS chaves, você deve usar AWS KMS. Para obter informações sobre como criar e gerenciar KMS chaves, consulteManaging keys. Para obter informações sobre o uso de KMS chaves, consulte AWS Key Management Service APIReferência.

Por padrão, AWS KMS cria o material chave para uma KMS chave. Você não pode extrair, exportar, visualizar ou gerenciar esse material de chaves. A única exceção é a chave pública de um par de chaves assimétricas, que você pode exportar para uso fora do AWS. Além disso, você não pode excluir esse material de chave; você deve excluir a KMS chave. No entanto, você pode importar seu próprio material de chaves em uma KMS chave ou usar um armazenamento de chaves personalizado para criar KMS chaves que usem material de chaves em seu AWS CloudHSM cluster ou material chave em um gerenciador de chaves externo que você possui e gerencia fora do AWS.

AWS KMS também suporta chaves multirregionais, que permitem criptografar dados em uma Região da AWS e decifrá-lo em uma forma diferente Região da AWS.

Para obter informações sobre como criar e gerenciar KMS chaves, consulteManaging keys. Para obter informações sobre o uso de KMS chaves, consulte AWS Key Management Service APIReferência.

Chaves do cliente e AWS keys

As KMS chaves que você cria são chaves gerenciadas pelo cliente. Serviços da AWS que usam KMS chaves para criptografar seus recursos de serviço geralmente criam chaves para você. KMSchaves que Serviços da AWS crie em seu AWS conta são Chaves gerenciadas pela AWS. KMSchaves que Serviços da AWS criar em uma conta de serviço são Chaves pertencentes à AWS.

Tipo de KMS chave Pode visualizar os KMS principais metadados Pode gerenciar a KMS chave Usado apenas para o meu Conta da AWS Rotação automática Definição de preço
Chave gerenciada pelo cliente Sim Sim Sim Opcional. A cada ano (aproximadamente 365 dias)

Tarifa mensal (proporcional por hora)

Tarifa por uso

Chave gerenciada pela AWS Sim Não Sim Obrigatório. A cada ano (aproximadamente 365 dias)

Nenhuma tarifa mensal

Taxa por uso (algumas Serviços da AWS pague essa taxa para você)

Chave pertencente à AWS Não Não Não Varia Nenhuma tarifa

AWS serviços que se integram com AWS KMSdiferem em seu suporte para KMS chaves. Alguns AWS os serviços criptografam seus dados por padrão com um Chave pertencente à AWS ou um Chave gerenciada pela AWS. Alguns AWS os serviços oferecem suporte a chaves gerenciadas pelo cliente. Outros AWS os serviços suportam todos os tipos de KMS chaves para permitir a facilidade de um Chave pertencente à AWS, a visibilidade de um Chave gerenciada pela AWS, ou o controle de uma chave gerenciada pelo cliente. Para obter informações detalhadas sobre as opções de criptografia que um AWS ofertas de serviços, consulte o tópico Criptografia em repouso no guia do usuário ou no guia do desenvolvedor do serviço.

Chaves gerenciadas pelo cliente

As KMS chaves que você cria são chaves gerenciadas pelo cliente. As chaves gerenciadas pelo cliente são KMS chaves em seu Conta da AWS que você cria, possui e gerencia. Você tem controle total sobre essas KMS chaves, incluindo estabelecer e manter suas principais políticas, IAM políticas e concessões, ativá-las e desativá-las, alternar seu material criptográfico, adicionar tags, criar aliases que se referem às chaves e programar as KMS chaves para exclusão. KMS

As chaves gerenciadas pelo cliente aparecem na página Chaves gerenciadas pelo cliente do AWS Management Console for AWS KMS. Para identificar definitivamente uma chave gerenciada pelo cliente, use a DescribeKeyoperação. Para chaves gerenciadas pelo cliente, o valor do campo KeyManager da resposta DescribeKey é CUSTOMER.

Você pode usar sua chave gerenciada pelo cliente em operações criptográficas e auditar o uso no AWS CloudTrail troncos. Além disso, muitos AWS serviços que se integram com AWS KMSpermitem que você especifique uma chave gerenciada pelo cliente para proteger os dados armazenados e gerenciados para você.

Chaves gerenciadas pelo cliente geram uma taxa mensal e uma taxa para uso que excede o nível gratuito. Eles são contados contra o AWS KMS cotas para sua conta. Para obter detalhes, consulte AWS Key Management Service Preços Cotas e.

Chaves gerenciadas pela AWS

Chaves gerenciadas pela AWSsão KMS chaves em sua conta que são criadas, gerenciadas e usadas em seu nome por um AWS serviço integrado com AWS KMS.

Alguns AWS os serviços permitem que você escolha um Chave gerenciada pela AWS ou uma chave gerenciada pelo cliente para proteger seus recursos nesse serviço. Em geral, a menos que você precise controlar a chave de criptografia que protege seus recursos, um Chave gerenciada pela AWS é uma boa escolha. Você não precisa criar ou manter a chave ou sua política de chaves, e nunca há uma taxa mensal para uma Chave gerenciada pela AWS.

Você tem permissão para ver o Chaves gerenciadas pela AWSem sua conta, visualize suas principais políticas e audite seu uso em AWS CloudTrail troncos. No entanto, você não pode alterar nenhuma propriedade do Chaves gerenciadas pela AWS, altere-as, altere suas principais políticas ou agende sua exclusão. E você não pode usar Chaves gerenciadas pela AWS diretamente em operações criptográficas; o serviço que as cria as usa em seu nome.

Chaves gerenciadas pela AWS aparecem no Chaves gerenciadas pela AWSpágina do AWS Management Console for AWS KMS. Você também pode identificar Chaves gerenciadas pela AWS por seus aliases, que têm o formatoaws/service-name, comoaws/redshift. Para identificar definitivamente um Chaves gerenciadas pela AWS, use a DescribeKeyoperação. Para Chaves gerenciadas pela AWS, o valor do KeyManager campo da DescribeKey resposta éAWS.

Todos Chaves gerenciadas pela AWS são alternados automaticamente todos os anos. alternarNão é possível alterar essa programação de rotação.

nota

Em maio de 2022, AWS KMS alterou o cronograma de rotação para Chaves gerenciadas pela AWS de três em três anos (aproximadamente 1.095 dias) a cada ano (aproximadamente 365 dias).

Novo Chaves gerenciadas pela AWS são alternados automaticamente um ano após serem criados e aproximadamente a cada ano a partir de então.

Existente Chaves gerenciadas pela AWS são alternados automaticamente um ano após a rotação mais recente e todos os anos a partir de então.

Não há mensalidade para Chaves gerenciadas pela AWS. Eles podem estar sujeitos a taxas de uso além do nível gratuito, mas alguns AWS os serviços cobrem esses custos para você. Para obter detalhes, consulte o tópico Criptografia em repouso, no manual do usuário ou no guia do desenvolvedor do serviço. Para obter detalhes, consulte AWS Key Management Service Preços.

Chaves gerenciadas pela AWS não conte com as cotas de recursos o número de KMS chaves em cada região da sua conta. Mas quando usadas em nome de um principal em sua conta, as KMS chaves são contabilizadas nas cotas de solicitação. Para obter detalhes, consulte Cotas.

Chaves pertencentes à AWS

Chaves pertencentes à AWSsão uma coleção de KMS chaves que um AWS o serviço possui e gerencia para uso em vários Contas da AWS. Apesar Chaves pertencentes à AWS não estão no seu Conta da AWS, um AWS o serviço pode usar um Chave pertencente à AWS para proteger os recursos em sua conta.

Alguns AWS os serviços permitem que você escolha um Chave pertencente à AWS ou uma chave gerenciada pelo cliente. Em geral, a menos que você precise auditar ou controlar a chave de criptografia que protege seus recursos, um Chave pertencente à AWS é uma boa escolha. Chaves pertencentes à AWS são totalmente gratuitos (sem taxas mensais ou taxas de uso), eles não contam contra o AWS KMS cotas para sua conta, e elas são fáceis de usar. Você não precisa criar ou manter a chave ou sua política de chave.

A rotação do Chaves pertencentes à AWS varia entre os serviços. Para obter informações sobre a rotação de um determinado Chave pertencente à AWS, consulte o tópico Criptografia em repouso no guia do usuário ou no guia do desenvolvedor do serviço.

Chaves de criptografia KMS simétricas

Quando você cria um AWS KMS key, por padrão, você recebe uma KMS chave para criptografia simétrica. Esse é o tipo de KMS chave básico e mais comumente usado.

Em AWS KMS, uma chave de criptografia simétrica representa uma KMS chave de GCM criptografia de 256 bitsAES, exceto nas regiões da China, onde representa uma chave de criptografia de 128 SM4 bits. O material chave simétrico nunca sai AWS KMS não criptografado. Para usar uma KMS chave de criptografia simétrica, você deve chamar AWS KMS. As chaves de criptografia simétrica são usadas na criptografia simétrica, em que a mesma chave é usada para criptografia e decodificação. A menos que sua tarefa exija explicitamente criptografia assimétrica, KMS chaves de criptografia simétricas, que nunca saem AWS KMS não criptografados, são uma boa escolha.

AWS serviços que são integrados com AWS KMSuse somente KMS chaves de criptografia simétricas para criptografar seus dados. Esses serviços não oferecem suporte à criptografia com chaves assimétricasKMS. Para obter ajuda para determinar se uma KMS chave é simétrica ou assimétrica, consulte. Identificar chaves do KMS assimétricas

Tecnicamente, a especificação de chave para uma chave simétrica é SYMMETRIC _DEFAULT, o uso da chave é ENCRYPT _ DECRYPT e o algoritmo de criptografia é _. SYMMETRIC DEFAULT Para obter detalhes, consulte Especificação da chave SYMMETRIC_DEFAULT.

Você pode usar uma KMS chave de criptografia simétrica no AWS KMS para criptografar, descriptografar e recriptografar dados e gerar chaves de dados e pares de chaves de dados. Você pode criar chaves de criptografia simétricas multirregionais, importar seu próprio material de KMS chaves em uma chave de criptografia simétrica e criar KMS chaves de criptografia simétricas em armazenamentos de KMS chaves personalizadas. Para obter uma tabela comparando as operações que você pode realizar em KMS chaves de diferentes tipos, consulteReferência de tipos de chaves.

Teclas assimétricas KMS

Você pode criar chaves assimétricas KMS no AWS KMS. Uma KMSchave assimétrica representa um par matematicamente relacionado de chave pública e chave privada. A chave privada nunca sai AWS KMS não criptografado. Para usar a chave privada, você deve ligar AWS KMS. Você pode usar a chave pública em AWS KMS ligando para o AWS KMS APIoperações, ou você pode baixar a chave pública e usá-la fora do AWS KMS. Você também pode criar chaves assimétricas KMSmultirregionais.

Você pode criar chaves assimétricas que RSA representem pares de KMS chaves, pares de chaves de curvas elípticas ou pares de chaves (somente SM2 regiões da China). KMSchaves com pares de RSA chaves podem ser usadas para criptografar ou descriptografar dados ou assinar e verificar mensagens (mas não ambas). KMSchaves com pares NIST de chaves de curva elíptica recomendados podem ser usadas para assinar e verificar mensagens ou derivar segredos compartilhados (mas não ambos). KMSchaves com pares de ECC_SECG_P256K1 chaves só podem ser usadas para assinar e verificar mensagens. KMSchaves com pares de chaves SM2 (somente para regiões da China) podem ser usadas para criptografar e descriptografar dados, assinar e verificar mensagens ou derivar segredos compartilhados (você deve escolher um tipo de uso de chave).

Para obter mais informações sobre como criar e usar KMS chaves assimétricas, consulte. Chaves assimétricas em AWS KMS

HMACKMSchaves

Uma HMACKMSchave representa uma chave simétrica de tamanho variável que é usada para gerar e verificar códigos de autenticação de mensagens baseados em hash (). HMAC O material chave para uma HMAC chave nunca sai AWS KMS não criptografado. Para usar uma HMAC chave, chame as VerifyMacAPIoperações GenerateMacou.

Você também pode criar HMAC KMS chaves multirregionais.

Para obter mais informações sobre como criar e usar HMAC KMS chaves, consulteChaves de HMAC no AWS KMS.

Chaves de dados

Chaves de dados são chaves simétricas que você pode usar para criptografar dados, inclusive grandes quantidades de dados e outras chaves de criptografia dos dados. Ao contrário das KMSchaves simétricas, que não podem ser baixadas, as chaves de dados são devolvidas a você para uso fora do AWS KMS.

Quando AWS KMS gera chaves de dados, retorna uma chave de dados em texto simples para uso imediato (opcional) e uma cópia criptografada da chave de dados que você pode armazenar com segurança com os dados. Quando você estiver pronto para descriptografar os dados, primeiro pergunte AWS KMS para descriptografar a chave de dados criptografada.

AWS KMS gera, criptografa e descriptografa chaves de dados. No entanto, AWS KMS não armazena, gerencia ou rastreia suas chaves de dados nem executa operações criptográficas com chaves de dados. Você deve usar e gerenciar chaves de dados fora do AWS KMS. Para obter ajuda sobre como usar as chaves de dados com segurança, consulte AWS Encryption SDK.

Criação de uma chave de dados

Para criar uma chave de dados, chame a GenerateDataKeyoperação. AWS KMS gera a chave de dados. Em seguida, ele criptografa uma cópia da chave de dados sob uma chave de criptografia simétrica KMS especificada por você. A operação retorna uma cópia em texto simples da chave de dados e a cópia da chave de dados criptografada sob a KMS chave. A imagem a seguir mostra essa operação.

Gerar uma chave de dados

AWS KMS também suporta a GenerateDataKeyWithoutPlaintextoperação, que retorna somente uma chave de dados criptografada. Quando precisar usar a chave de dados, pergunte AWS KMS para decifrá-lo.

Criptografia de dados com uma chave de dados

AWS KMS não é possível usar uma chave de dados para criptografar dados. Mas você pode usar a chave de dados fora do AWS KMS, por exemplo, usando Open SSL ou uma biblioteca criptográfica como a AWS Encryption SDK.

Depois de usar a chave de dados de texto simples para criptografar dados e remova-a da memória assim que possível. Você pode armazenar seguramente as chaves de dados criptografadas com os dados criptografados para que estejam disponíveis para descriptografar os dados.

Criptografe os dados do usuário fora do AWS KMS

Descriptografia dos dados com uma chave de dados

Para descriptografar seus dados, passe a chave de dados criptografada para a operação Decrypt. AWS KMS usa sua KMS chave para descriptografar a chave de dados e, em seguida, retorna a chave de dados em texto simples. Use a chave de dados de texto simples para descriptografar seus dados e remove-a da memória assim que possível.

O diagrama a seguir mostra como usar a operação Decrypt para descriptografar uma chave de dados criptografada.

Descriptografia de uma chave de dados

Como as chaves inutilizáveis afetam KMS as chaves de dados

Quando uma KMS chave se torna inutilizável, o efeito é quase imediato (sujeito a uma eventual consistência). O estado da KMS chave muda para refletir sua nova condição, e todas as solicitações para usar a KMS chave em operações criptográficas falham.

No entanto, o efeito nas chaves de dados criptografadas pela KMS chave e nos dados criptografados pela chave de dados é adiado até que a KMS chave seja usada novamente, como para descriptografar a chave de dados.

KMSas chaves podem se tornar inutilizáveis por vários motivos, incluindo as seguintes ações que você pode realizar.

Este efeito é particularmente importante para muitos Serviços da AWS que usam chaves de dados para proteger os recursos que o serviço gerencia. O exemplo a seguir usa o Amazon Elastic Block Store (AmazonEBS) e o Amazon Elastic Compute Cloud (AmazonEC2). Diferente Serviços da AWS use chaves de dados de maneiras diferentes. Para obter detalhes, consulte a seção Proteção de dados do capítulo Segurança para o AWS service (Serviço da AWS).

Por exemplo, considere este cenário:

  1. Você cria um EBS volume criptografado e especifica uma KMS chave para protegê-lo. Amazon EBS pergunta AWS KMS para usar sua KMS chave para gerar uma chave de dados criptografada para o volume. A Amazon EBS armazena a chave de dados criptografada com os metadados do volume.

  2. Quando você anexa o EBS volume a uma EC2 instância, a Amazon EC2 usa sua KMS chave para descriptografar a chave de dados criptografada do EBS volume. A Amazon EC2 usa a chave de dados no hardware Nitro, que é responsável por criptografar toda a E/S do disco no volume. EBS A chave de dados persiste no hardware Nitro enquanto o EBS volume está conectado à EC2 instância.

  3. Você executa uma ação que torna a KMS chave inutilizável. Isso não tem efeito imediato na EC2 instância ou no EBS volume. A Amazon EC2 usa a chave de dados, não a KMS chave, para criptografar toda a E/S do disco enquanto o volume está conectado à instância.

  4. No entanto, quando o EBS volume criptografado é separado da EC2 instância, a Amazon EBS remove a chave de dados do hardware Nitro. Na próxima vez que o EBS volume criptografado for anexado a uma EC2 instância, o anexo falhará, porque a Amazon EBS não pode usar a KMS chave para descriptografar a chave de dados criptografada do volume. Para usar o EBS volume novamente, você deve tornar a KMS tecla utilizável novamente.

Pares de chaves de dados

Pares de chaves de dados são chaves de dados assimétricas que consistem em uma chave pública e uma chave privada matematicamente relacionadas. Eles são projetados para uso em criptografia e decodificação do lado do cliente ou assinatura e verificação fora do AWS KMS.

Ao contrário dos pares de chaves de dados que ferramentas como o Open SSL geram, AWS KMS protege a chave privada em cada par de chaves de dados sob uma chave de criptografia KMS simétrica em AWS KMS que você especifica. No entanto, AWS KMS não armazena, gerencia nem rastreia seus pares de chaves de dados nem executa operações criptográficas com pares de chaves de dados. Você deve usar e gerenciar pares de chaves de dados fora do AWS KMS.

AWS KMS suporta os seguintes tipos de pares de chaves de dados:

  • RSApares de chaves: RSA _2048, RSA _3072 e _4096 RSA

  • Pares de chaves de curvas elípticas: ECC _ NIST _P256, _ NIST _P384, ECC _ _P521 e _ _P256K1 ECC NIST ECC SECG

  • Pares de chaves SM (somente regiões da China): SM2

O tipo de par de chaves de dados selecionado geralmente depende do caso de uso ou dos requisitos regulatórios. A maioria dos certificados exige RSA chaves. As teclas de curva elíptica são frequentemente usadas para assinaturas digitais ou para derivar segredos compartilhados. ECC_ SECG _As chaves P256K1 são comumente usadas para criptomoedas. AWS KMS recomenda que você use pares de ECC chaves para assinatura e use pares de RSA chaves para criptografia ou assinatura, mas não ambas. No entanto, AWS KMS não pode impor nenhuma restrição ao uso de pares de chaves de dados fora do AWS KMS.

Criar um par de chaves de dados

Para criar um par de chaves de dados, chame as GenerateDataKeyPairWithoutPlaintextoperações GenerateDataKeyPairou. Especifique a KMSchave de criptografia simétrica que você deseja usar para criptografar a chave privada.

GenerateDataKeyPair retorna uma chave pública de texto não criptografado, uma chave privada de texto não criptografado e uma chave privada criptografada. use essa operação quando precisar imediatamente de uma chave privada de texto não criptografado, como para gerar uma assinatura digital.

GenerateDataKeyPairWithoutPlaintext retorna uma chave pública de texto não criptografado e uma chave privada criptografada, mas não uma chave privada de texto não criptografado. Use essa operação quando não precisar imediatamente de uma chave privada de texto não criptografado, como quando você está criptografando uma chave pública. Posteriormente, quando precisar de uma chave privada de texto não criptografado para descriptografar os dados, poderá chamar a operação Decrypt.

A imagem a seguir mostra a operação GenerateDataKeyPair. A operação GenerateDataKeyPairWithoutPlaintext omite a chave privada de texto não criptografado.

Gerar um par de chaves de dados

Criptografar dados com um par de chaves de dados

Ao criptografar com um par de chaves de dados, você usa a chave pública do par para criptografar os dados e a chave privada do mesmo par para descriptografar os dados. Normalmente, pares de chaves de dados são usados quando muitos usuários precisam criptografar dados que só o usuário que tem a chave privada pode descriptografar.

As partes com a chave pública usam essa chave para criptografar dados, conforme mostrado no diagrama a seguir.

Criptografe os dados do usuário com a chave pública de um par de chaves de dados fora do AWS KMS

Descriptografar dados com um par de chaves de dados

Para descriptografar seus dados, use a chave privada no par de chaves de dados. Para que a operação seja bem-sucedida, as chaves pública e privada devem ser do mesmo par de chaves de dados e você deve usar o mesmo algoritmo de criptografia.

Para descriptografar a chave privada criptografada, transmita-a para a operação Decrypt. Use a chave privada de texto não criptografado para descriptografar os dados. Depois, remova a chave privada de texto não criptografado da memória assim que possível.

O diagrama a seguir mostra como usar a chave privada em um par de chaves de dados para descriptografar texto cifrado.

Descriptografe os dados com a chave privada em um par de chaves de dados fora do AWS KMS.

Assinar mensagens com um par de chaves de dados

Para gerar uma assinatura criptográfica para uma mensagem, use a chave privada no par de chaves de dados. Qualquer pessoa com a chave pública pode usá-la para verificar se a mensagem foi assinada com a chave privada e se ela não foi alterada desde que foi assinada.

Se você criptografar sua chave privada, passe a chave privada criptografada para a operação Decrypt. AWS KMS usa sua KMS chave para descriptografar a chave de dados e, em seguida, retorna a chave privada em texto simples. Use a chave privada de texto não criptografado para gerar a assinatura. Depois, remova a chave privada de texto não criptografado da memória assim que possível.

Para assinar uma mensagem, crie um resumo da mensagem usando uma função hash criptográfica, como o dgstcomando em Abrir. SSL Depois, transmita a chave privada de texto não criptografado ao algoritmo de assinatura. O resultado é uma assinatura que representa os conteúdos da mensagem. (Talvez seja possível assinar mensagens mais curtas sem antes criar um resumo. O tamanho máximo da mensagem varia de acordo com a ferramenta de assinatura que você usa.)

O diagrama a seguir mostra como usar a chave privada em um par de chaves para assinar a mensagem.

Gere uma assinatura criptográfica com a chave privada em um par de chaves de dados fora do AWS KMS.

Verificar uma assinatura com um par de chaves de dados

Qualquer pessoa que tenha a chave pública no par de chaves de dados pode usá-la para verificar a assinatura gerada com sua chave privada. A verificação confirma que um usuário autorizado assinou a mensagem com a chave privada e o algoritmo de assinatura especificados, e que a mensagem não foi alterada desde que foi assinada.

Para ser bem-sucedida, a parte que está verificando a assinatura deve gerar o mesmo tipo de resumo, usar o mesmo algoritmo e usar a chave pública que corresponde à chave privada usada para assinar a mensagem.

O diagrama a seguir mostra como usar a chave pública em um par de chaves para verificar a assinatura de uma mensagem.

Verifique uma assinatura criptográfica com a chave pública em um par de chaves de dados fora do AWS KMS.

Derive um segredo compartilhado com pares de chaves de dados

O acordo de chaves permite que dois pares, cada um com um par de chaves pública-privada de curva elíptica, estabeleçam um segredo compartilhado em um canal inseguro. Para obter um segredo compartilhado, os dois pares devem trocar suas chaves públicas pelo canal de comunicação inseguro (como a Internet). Em seguida, cada parte usa sua chave privada e a chave pública de seus pares para calcular o mesmo segredo compartilhado usando um algoritmo de acordo de chave. Você pode usar o valor do segredo compartilhado para derivar uma chave simétrica que pode criptografar e descriptografar dados enviados entre os dois pares ou que podem ser gerados e verificados. HMACs

nota

AWS KMS é altamente recomendável verificar se a chave pública que você recebe veio da parte esperada antes de usá-la para derivar um segredo compartilhado.

Aliases

Use um alias como nome amigável para uma KMS chave. Por exemplo, você pode se referir a uma KMS chave como chave de teste em vez de 1234abcd-12ab-34cd-56ef-1234567890ab.

Os aliases facilitam a identificação de uma KMS chave no AWS Management Console. Você pode usar um alias para identificar uma KMS chave em alguns AWS KMS operações, incluindo operações criptográficas. Nos aplicativos, você pode usar um único alias para se referir a KMS chaves diferentes em cada Região da AWS.

Você também pode permitir e negar acesso às KMS chaves com base em seus aliases sem editar políticas ou gerenciar concessões. Esse recurso faz parte do AWS KMS suporte para controle de acesso baseado em atributos ()ABAC. Para obter detalhes, consulte ABAC para AWS KMS.

Em AWS KMS, os aliases são recursos independentes, não propriedades de uma KMS chave. Dessa forma, você pode adicionar, alterar e excluir um alias sem afetar a KMS chave associada.

Importante

Não inclua informações confidenciais ou sigilosas no nome do alias. Os aliases podem aparecer em texto simples em CloudTrail registros e outras saídas.

Saiba mais:

Armazenamentos de chaves personalizados

Um armazenamento de chaves personalizadas é um AWS KMS recurso apoiado por um gerente de chaves fora do AWS KMS que você possui e gerencia. Quando você usa uma KMS chave em um armazenamento de chaves personalizado para uma operação criptográfica, a operação criptográfica é realmente executada em seu gerenciador de chaves usando suas chaves criptográficas.

AWS KMS aguenta AWS CloudHSM principais lojas apoiadas por um AWS CloudHSM cluster e armazenamentos de chaves externos que são apoiados por um gerenciador de chaves externo fora do AWS.

Para obter mais informações, consulte Armazenamentos de chaves personalizados.

Operações criptográficas

Em AWS KMS, operações criptográficas são API operações que usam KMS chaves para proteger dados. Porque KMS as chaves permanecem dentro AWS KMS, você deve ligar AWS KMS para usar uma KMS chave em uma operação criptográfica.

Para realizar operações criptográficas com KMS chaves, use o AWS SDKs, AWS Command Line Interface (AWS CLI), ou o AWS Tools for PowerShell. Você não pode realizar operações criptográficas no AWS KMS console. Para obter exemplos de chamadas de operações de criptografia em várias linguagens de programação, consulte Exemplos de código para AWS KMS usar AWS SDKs.

A tabela a seguir lista os AWS KMS operações criptográficas. Também mostra o tipo de chave e os requisitos de uso KMS das chaves usadas na operação.

Operation Tipo de chave Uso da chave
Decrypt Simétrico ou assimétrico ENCRYPT_DECRYPT
DeriveSharedSecret Assimétrica KEY_AGREEMENT
Encrypt Simétrico ou assimétrico ENCRYPT_DECRYPT
GenerateDataKey Simétrica ENCRYPT_DECRYPT
GenerateDataKeyPair Simétrica [1]

Não é compatível com KMS chaves em armazenamentos de chaves personalizadas.

ENCRYPT_DECRYPT
GenerateDataKeyPairWithoutPlaintext Simétrica [1]

Não é compatível com KMS chaves em armazenamentos de chaves personalizadas.

ENCRYPT_DECRYPT
GenerateDataKeyWithoutPlaintext Simétrica ENCRYPT_DECRYPT
GenerateMac HMAC GENERATE_VERIFY_MAC
GenerateRandom N/A. Esta operação não usa uma KMS chave. N/D
ReEncrypt Simétrico ou assimétrico ENCRYPT_DECRYPT
Sign Assimétrica SIGN_VERIFY
Verificar Assimétrica SIGN_VERIFY
VerifyMac HMAC GENERATE_VERIFY_MAC

[1] Gera um par de chaves de dados assimétrico que é protegido por uma chave de criptografia simétrica. KMS

Para obter informações sobre as permissões para operações de criptografia, consulte a AWS KMS permissões.

Para fazer AWS KMS responsivo e altamente funcional para todos os usuários, AWS KMS estabelece cotas no número de operações criptográficas chamadas em cada segundo. Para obter detalhes, consulte Cotas compartilhadas para operações de criptografia.

Identificadores-chave () KeyId

Os identificadores de chave agem como nomes para suas KMS chaves. Eles ajudam você a reconhecer suas KMS chaves no console. Você os usa para indicar quais KMS teclas você deseja usar em AWS KMS APIoperações, principais políticas, IAM políticas e subsídios. Os valores do identificador de chave não estão completamente relacionados ao material de chave associado à KMS chave.

AWS KMS define vários identificadores-chave. Quando você cria uma KMS chave, AWS KMS gera uma chave ARN e um ID de chave, que são propriedades da KMS chave. Quando você cria um alias, AWS KMS gera um alias ARN com base no nome do alias que você define. Você pode visualizar os identificadores de chave e alias no AWS Management Console e no AWS KMS API.

No painel, AWS KMS console, você pode visualizar e filtrar KMS as chaves pela chaveARN, ID da chave ou nome do alias e classificar por ID da chave e nome do alias. Para obter ajuda para encontrar os identificadores de chave no console, consulte Encontrando o ID da chave e a chave ARN.

No painel, AWS KMS API, os parâmetros que você usa para identificar uma KMS chave são nomeados KeyId ou uma variação, como TargetKeyId ouDestinationKeyId. No entanto, os valores desses parâmetros não estão limitados à chaveIDs. Alguns podem usar qualquer identificador de chave válido. Para obter informações sobre os valores de cada parâmetro, consulte a descrição do parâmetro na AWS Key Management Service APIReferência.

nota

Ao usar o AWS KMS API, tenha cuidado com o identificador de chave que você usa. Diferentes APIs exigem identificadores de chave diferentes. Em geral, use o identificador de chave mais completo e prático para a sua tarefa.

AWS KMS suporta os seguintes identificadores-chave.

Chave ARN

A chave ARN é o Amazon Resource Name (ARN) de uma KMS chave. É um identificador exclusivo e totalmente qualificado para a KMS chave. Uma chave ARN inclui o Conta da AWS, Região e o ID da chave. Para obter ajuda para encontrar a chave ARN de uma KMS chave, consulteEncontrando o ID da chave e a chave ARN.

O formato de uma chave ARN é o seguinte:

arn:<partition>:kms:<region>:<account-id>:key/<key-id>

Veja a seguir um exemplo de chave ARN para uma KMS chave de região única.

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

A ferramenta key-id O elemento da chave ARNs de chaves multirregionais começa com o mrk- prefixo. Veja a seguir um exemplo de chave ARN para uma chave multirregional.

arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab
ID da chave

O ID da chave identifica de forma exclusiva uma KMS chave em uma conta e região. Para obter ajuda para encontrar o ID da KMS chave, consulteEncontrando o ID da chave e a chave ARN.

Veja a seguir um exemplo de ID de chave para uma KMS chave de região única.

1234abcd-12ab-34cd-56ef-1234567890ab

A chave IDs das chaves multirregionais começa com o mrk- prefixo. Veja a seguir um exemplo de ID de chave para uma chave do KMS de várias regiões.

mrk-1234abcd12ab34cd56ef1234567890ab
Pseudônimo ARN

O alias ARN é o Amazon Resource Name (ARN) de um AWS KMS pseudônimo. É um identificador exclusivo e totalmente qualificado para o alias e para a KMS chave que ele representa. Um alias ARN inclui o Conta da AWS, Região e o nome do alias.

A qualquer momento, um alias ARN identifica uma chave específicaKMS. No entanto, como você pode alterar a KMS chave associada ao alias, o alias ARN pode identificar KMS chaves diferentes em momentos diferentes. Para obter ajuda para encontrar o alias ARN de uma KMS chave, consulteEncontrando o nome e o alias do alias ARN.

O formato de um alias ARN é o seguinte:

arn:<partition>:kms:<region>:<account-id>:alias/<alias-name>

A seguir está o alias ARN de um fictícioExampleAlias.

arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
Nome do alias

O nome do alias é uma string com até 256 caracteres. Ele identifica de forma exclusiva uma KMS chave associada em uma conta e região. No painel, AWS KMS API, os apelidos sempre começam comalias/. Para obter ajuda para encontrar o nome alternativo de uma KMS chave, consulteEncontrando o nome e o alias do alias ARN.

O formato de um nome de alias é o seguinte:

alias/<alias-name>

Por exemplo:

alias/ExampleAlias

O aws/ prefixo de um nome de alias é reservado para Chaves gerenciadas pela AWS. Você não pode criar um alias com esse prefixo. Por exemplo, o nome alternativo do Chave gerenciada pela AWS para o Amazon Simple Storage Service (Amazon S3) é o seguinte.

alias/aws/s3

Material de chave

O material de chave é a string de bits usada em um algoritmo criptográfico. O material de chave secreta deve ser mantido em segredo para proteger as operações de criptografia que o utilizam. O material de chave pública foi projetado para ser compartilhado.

Cada KMS chave inclui uma referência ao material principal em seus metadados. A origem do material das KMS chaves de criptografia simétrica pode variar. Você pode usar material chave que AWS KMS gera, material chave que é gerado no AWS CloudHSM agrupe um repositório de chaves personalizadas ou importe seu próprio material de chaves. Se você usa AWS KMS material chave para sua KMS chave de criptografia simétrica, você pode ativar a rotação automática de seu material de chave.

Por padrão, cada KMS chave tem um material de chave exclusivo. No entanto, você pode criar um conjunto de chaves de várias regiões com o mesmo material de chave.

Origem do material de chave

A origem do material KMS chave é uma propriedade chave que identifica a origem do material chave na KMS chave. Você escolhe a origem do material da chave ao criar a KMS chave e não pode alterá-la. A origem do material da chave afeta as características de segurança, durabilidade, disponibilidade, latência e taxa de transferência da KMS chave.

Para encontrar a origem do material da KMS chave, use a DescribeKeyoperação ou veja o valor da Origem na guia Configuração criptográfica da página de detalhes de uma KMS chave no AWS KMS console. Para obter ajuda, consulte Visualizar chaves.

KMSas chaves podem ter um dos seguintes valores-chave de origem do material.

AWS_KMS

AWS KMS cria e gerencia o material chave para a KMS chave em seu próprio armazenamento de chaves. Esse é o valor padrão e recomendado para a maioria das KMS chaves.

Para obter ajuda na criação de chaves com material chave de AWS KMS, consulte Criar chaves.

EXTERNAL (Import key material)

A KMS chave importou o material da chave. Quando você cria uma KMS chave com uma origem de material de External chave, a KMS chave não tem material de chave. Posteriormente, você pode importar o material da chave para a KMS chave. Ao usar material de chave importado, você precisa proteger e gerenciar esse material de chave fora do AWS KMS, incluindo a substituição do material chave se ele expirar. Para obter detalhes, consulte Sobre o material de chave importada.

Para obter ajuda na criação de uma KMS chave para material de chave importado, consulteEtapa 1: criar uma chave do KMS sem material de chave.

AWS_CLOUDHSM

AWS KMS cria o material chave no AWS CloudHSM cluster para o seu AWS CloudHSM loja de chaves.

Para obter ajuda na criação de uma KMS chave em um AWS CloudHSM loja de chaves, vejaCrie KMS chaves em um AWS CloudHSM armazenamento de chaves.

EXTERNAL_KEY_STORE

O material chave é uma chave criptográfica em um gerenciador de chaves externo fora do AWS. Essa origem é suportada somente para KMS chaves em um armazenamento de chaves externo.

Para obter ajuda na criação de uma KMS chave em um armazenamento de chaves externo, consulteCriar chaves do KMS em um armazenamento de chaves externas.

Especificação da chave

A especificação da chave é uma propriedade que representa a configuração criptográfica de uma chave. O significado da especificação de chave difere com o tipo de chave.

  • AWS KMS keys — A especificação da chave determina se a KMS chave é simétrica ou assimétrica. Ela também determina o tipo do material de chave e os algoritmos compatíveis. Você escolhe a especificação da chave ao criar a KMS chave e não pode alterá-la. A especificação de chave padrão, SYMMETRIC_ DEFAULT, representa uma chave de criptografia simétrica de 256 bits.

    nota

    A KMS chave KeySpec for a era conhecida comoCustomerMasterKeySpec. O CustomerMasterKeySpec parâmetro da CreateKeyoperação está obsoleto. Em vez disso, use o parâmetro KeySpec, que funciona da mesma maneira. Para evitar alterações significativas, a resposta das DescribeKeyoperações CreateKey e agora inclui ambos KeySpec e CustomerMasterKeySpec membros com os mesmos valores.

    Para obter uma lista de especificações de chave e ajuda com a escolha de uma especificação de chave, consulte Selecionar a especificação de chave. Para encontrar a especificação chave de uma KMS chave, use a DescribeKeyoperação ou consulte a guia Configuração criptográfica na página de detalhes para ver uma KMS chave no AWS KMS console. Para obter ajuda, consulte Visualizar chaves.

    Para limitar as principais especificações que os diretores podem usar ao criar KMS chaves, use a chave kms: KeySpec condition. Você também pode usar a chave de kms:KeySpec condição para permitir que os diretores liguem AWS KMS opera somente em KMS teclas com uma especificação de tecla específica. Por exemplo, você pode negar a permissão para agendar a exclusão de qualquer KMS chave com uma especificação de RSA_4096 chave.

  • Chaves de dados (GenerateDataKey) — A especificação da chave determina o comprimento de uma chave de AES dados.

  • Pares de chaves de dados (GenerateDataKeyPair) — A especificação do par de chaves determina o tipo de material de chave no par de chaves de dados.

Uso da chave

O uso da chave é uma propriedade que determina as operações de criptografia compatíveis com a chave. KMSas chaves podem ter um uso de chave de ENCRYPT_DECRYPTSIGN_VERIFY,GENERATE_VERIFY_MAC, ouKEY_AGREEMENT. Cada KMS chave pode ter apenas um uso de chave. Usar uma KMS chave para mais de um tipo de operação torna o produto de ambas as operações mais vulnerável a ataques.

Para obter ajuda na escolha do uso da KMS chave, consulteSelecionar o uso de chave. Para encontrar o uso da KMS chave, use a DescribeKeyoperação ou escolha a guia Configuração criptográfica na página de detalhes de uma KMS chave no AWS KMS console. Para obter ajuda, consulte Visualizar chaves.

Criptografia de envelope

Quando você criptografa seus dados, os dados são protegidos, mas é necessário proteger a chave de criptografia. Uma estratégia é para criptografá-la. Criptografia de envelope é a prática de criptografar dados de texto simples com uma chave de dados e criptografar a chave de dados em outra chave.

Você pode até mesmo criptografar a chave de criptografia dos dados em outra chave de criptografia e criptografar essa chave de criptografia em outra chave de criptografia. Mas em algum momento deverá manter uma chave em texto simples para que possa descriptografar as chaves e seus dados. Essa chave de criptografia em texto simples de nível superior é chamada de chave raiz.

criptografia envelopada

AWS KMS ajuda você a proteger suas chaves de criptografia armazenando-as e gerenciando-as com segurança. Chaves raiz armazenadas em AWS KMS, conhecido como AWS KMS keys, nunca deixe o AWS KMS FIPSmódulos de segurança de hardware validados não criptografados. Para usar uma KMS chave, você deve ligar AWS KMS.

Criptografia de envelope com várias chaves de criptografia de chave

A criptografia de envelope oferece vários benefícios:

  • Proteção de chaves de dados

    Quando você criptografa uma chave de dados, não precisa se preocupar em armazenar a chave de dados criptografada porque a chave de dados é inerentemente protegida pela criptografia. A chave de dados criptografada pode ser armazenada com segurança junto com os dados criptografados.

  • Criptografar os mesmos dados com várias chaves

    As operações de criptografia podem ser demoradas, especialmente quando os dados que estão sendo criptografados são objetos grandes. Em vez de recriptografar dados brutos várias vezes com diferentes chaves, você pode recriptografar somente as chaves de dados que protegem os dados brutos.

  • Combinação de pontos fortes de vários algoritmos

    Em geral, os algoritmos de chave simétrica são mais rápidos e geram textos cifrados menores do que os algoritmos de chave pública. No entanto, os algoritmos de chave pública fornecem separação inerente de funções e gerenciamento de chaves mais fácil. A criptografia de envelope permite associar os pontos fortes de cada estratégia.

Contexto de criptografia

Todos AWS KMS as operações criptográficas com KMSchaves de criptografia simétricas aceitam um contexto de criptografia, um conjunto opcional de pares de chave-valor não secretos que podem conter informações contextuais adicionais sobre os dados. AWS KMS usa o contexto de criptografia como dados autenticados adicionais (AAD) para oferecer suporte à criptografia autenticada.

Ao incluir um contexto de criptografia em uma solicitação de criptografia, ele é vinculado de maneira criptográfica ao texto cifrado, de modo que o mesmo contexto de criptografia seja necessário para descriptografar (ou descriptografar e criptografar novamente) os dados. Se o contexto de criptografia fornecido na solicitação de descriptografia não é uma correspondência exata, com distinção entre maiúsculas e minúsculas, a solicitação de descriptografia falha. Somente a ordem dos pares de chave-valor no contexto de criptografia pode variar.

nota

Você não pode especificar um contexto de criptografia em uma operação criptográfica com uma chave assimétrica ou uma KMS chave. HMAC KMS Algoritmos e MAC algoritmos assimétricos não oferecem suporte a um contexto de criptografia.

O contexto de criptografia não é secreto nem criptografado. Ele aparece em texto simples em AWS CloudTrail Registros para que você possa usá-los para identificar e categorizar suas operações criptográficas. Seu contexto de criptografia não deve incluir informações confidenciais. Recomendamos que o seu contexto de criptografia descreva os dados que estão sendo criptografados ou descriptografados. Por exemplo, quando você criptografar um arquivo, poderá usar parte do caminho do arquivo como contexto de criptografia.

"encryptionContext": { "department": "10103.0" }

Por exemplo, ao criptografar volumes e snapshots criados com a CreateSnapshotoperação Amazon Elastic Block Store EBS (Amazon), a Amazon EBS usa o ID do volume como valor de contexto de criptografia.

"encryptionContext": { "aws:ebs:id": "vol-abcde12345abc1234" }

Você também pode usar o contexto de criptografia para refinar ou limitar o acesso a AWS KMS keys na sua conta. Você pode usar o contexto de criptografia como uma restrição em concessões e como uma condição nas declarações de política.

Para saber como usar o contexto de criptografia para proteger a integridade dos dados criptografados, consulte o post Como proteger a integridade de seus dados criptografados usando AWS Key Management Service e EncryptionContext no AWS Blog de segurança.

Mais informações sobre contexto de criptografia.

AWS KMS impõe as seguintes regras para chaves e valores de contexto de criptografia.

  • A chave e o valor em um par de contexto de criptografia devem ser strings literais simples. Se você usar um tipo diferente, como um número inteiro ou flutuante, AWS KMS interpreta isso como uma string.

  • As chaves e valores em um contexto de criptografia podem incluir caracteres Unicode. Se um contexto de criptografia incluir caracteres que não são permitidos em políticas ou IAM políticas de chave, você não poderá especificar o contexto de criptografia em chaves de condição de política, como kms:EncryptionContext:context-keykms:EncryptionContextKeyse. Para obter detalhes sobre as regras de documento de política de chaves, consulte Formato de política de chaves. Para obter detalhes sobre as regras do documento de IAM política, consulte os requisitos de IAM nome no Guia IAM do usuário.

O contexto de criptografia é usado principalmente para verificar a integridade e a autenticidade. Mas você também pode usar o contexto de criptografia para controlar o acesso à criptografia simétrica. AWS KMS keys nas principais políticas e IAM políticas.

As chaves de EncryptionContextKeys condição kmsEncryptionContext:: e kms: permitem (ou negam) uma permissão somente quando a solicitação inclui chaves de contexto de criptografia específicas ou pares de valores-chave.

Por exemplo, a declaração de política principal a seguir permite que a RoleForExampleApp função use a KMS chave nas Decrypt operações. Ela usa a chave da condição kms:EncryptionContext:context-key para conceder essa permissão somente quando o contexto de criptografia na solicitação inclui um par de contexto de criptografia AppName:ExampleApp.

{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/RoleForExampleApp" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:AppName": "ExampleApp" } } }

Para obter mais informações sobre essas chaves de condição de contexto de criptografia, consulte Chaves de condição para AWS KMS.

Ao criar uma concessão, você pode incluir restrições de concessão que estabeleçam condições para as permissões de concessão. AWS KMS suporta duas restrições de concessão EncryptionContextEquals e EncryptionContextSubset ambas envolvem o contexto de criptografia em uma solicitação de uma operação criptográfica. Quando você usa essas restrições de concessão, as permissões na concessão são efetivas apenas quando o contexto de criptografia na solicitação para a operação criptográfica atende aos requisitos das restrições de concessão.

Por exemplo, você pode adicionar uma restrição de EncryptionContextEquals concessão a uma concessão que permita a GenerateDataKeyoperação. Com essa restrição, a concessão permite a operação apenas quando o contexto de criptografia na solicitação é uma correspondência com maiúsculas e minúsculas ao contexto de criptografia na restrição de concessão.

$ aws kms create-grant \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --grantee-principal arn:aws:iam::111122223333:user/exampleUser \ --retiring-principal arn:aws:iam::111122223333:role/adminRole \ --operations GenerateDataKey \ --constraints EncryptionContextEquals={Purpose=Test}

Uma solicitação como a seguinte da entidade principal receptora da concessão atenderia à restrição EncryptionContextEquals.

$ aws kms generate-data-key \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --key-spec AES_256 \ --encryption-context Purpose=Test

Para obter detalhes sobre as restrições de concessão, consulte Usar restrições de concessão. Para obter informações detalhadas sobre concessões, consulte Subsídios em AWS KMS.

AWS KMS uses AWS CloudTrail para registrar o contexto de criptografia para que você possa determinar quais KMS chaves e dados foram acessados. A entrada de registro mostra exatamente quais KMS chaves foram usadas para criptografar ou descriptografar dados específicos referenciados pelo contexto de criptografia na entrada de registro.

Importante

Como o contexto de criptografia é registrado em log, ele não deve conter informações confidenciais.

Para simplificar o uso de qualquer contexto de criptografia quando você chama as operações Decrypt ou ReEncrypt, é possível armazenar o contexto de criptografia com os dados criptografados. Recomendamos que você armazene apenas o suficiente do contexto de criptografia para ajudar a criar o contexto de criptografia por completo quando você precisar dele para criptografia ou descriptografia.

Por exemplo, se o contexto de criptografia é o caminho para um arquivo, armazene apenas parte desse caminho com o conteúdo do arquivo criptografado. Quando você precisar do contexto de criptografia completo, reconstrua-o do fragmento armazenado. Se alguém tentar violar o arquivo, como renomear ou mover para um local diferente, o valor do contexto de criptografia será alterado e a solicitação de descriptografia falhará.

Política de chaves

Ao criar uma KMS chave, você determina quem pode usar e gerenciar essa KMS chave. Essas permissões estão contidas em um documento chamado política de chaves. É possível usar a política de chaves para adicionar, remover ou alterar permissões a qualquer momento para uma chave gerenciada pelo cliente. Mas você não pode editar a política de chaves para um Chaves gerenciadas pela AWS. Para obter mais informações, consultePolíticas-chave em AWS KMS.

Concessão

Um subsídio é um instrumento político que permite AWS princípios a serem usados AWS KMS keys em operações criptográficas. Também permite que eles visualizem uma KMS chave (DescribeKey) e criem e gerenciem subsídios. Ao autorizar o acesso a uma KMS chave, os subsídios são considerados junto com as principais políticas e IAMpolíticas. As concessões geralmente são usadas para permissões temporárias porque você pode criar uma, usar suas permissões e excluí-la sem alterar suas principais políticas ou IAM políticas. Como concessões podem ser muito específicas e são fáceis de criar e revogar, elas geralmente são usadas para fornecer permissões temporárias ou permissões mais detalhadas.

Para obter informações detalhadas sobre concessões, incluindo a terminologia de concessões, consulte Subsídios em AWS KMS.

Auditando o uso da KMS chave

Você pode usar: AWS CloudTrail para auditar o uso da chave. CloudTrail cria arquivos de log que contêm um histórico de AWS APIchamadas e eventos relacionados para sua conta. Esses arquivos de log incluem todos AWS KMS APIsolicitações feitas com o AWS Console de gerenciamento, AWS SDKse ferramentas de linha de comando. Os arquivos de log também incluem solicitações para AWS KMS that AWS serviços feitos em seu nome. Você pode usar esses arquivos de log para encontrar informações importantes, inclusive quando as KMS chaves foram usadas, a operação solicitada, a identidade do solicitante e o endereço IP de origem. Para obter mais informações, consulte Fazendo login com AWS CloudTrail e o AWS CloudTrail Guia do usuário.

Infraestrutura de gerenciamento de chaves

Uma prática comum em criptografia é criptografar e descriptografar com um algoritmo publicamente disponível e revisado por pares, como AES (Advanced Encryption Standard) e uma chave secreta. Um dos principais problemas na criptografia é a grande dificuldade de manter uma chave secreta. Normalmente, esse é o trabalho de uma infraestrutura de gerenciamento de chaves (KMI). AWS KMS opera a infraestrutura principal para você. AWS KMS cria e armazena com segurança suas chaves raiz, chamadas AWS KMS keys. Para obter mais informações sobre como AWS KMS opera, consulte AWS Key Management Service Detalhes criptográficos.