AWS KMS keys
As chaves do KMS que você cria e gerencia para uso em suas próprias aplicações criptográficas são de um tipo conhecido como chaves gerenciadas pelo cliente. As chaves gerenciadas pelo cliente também podem ser usadas em conjunto com serviços da AWS que usam chaves do KMS para criptografar os dados que o serviço armazena em seu nome. As chaves gerenciadas pelo cliente são recomendadas para clientes que desejam controle total sobre o ciclo de vida e o uso de suas chaves. Há um custo mensal para ter uma chave gerenciada pelo cliente em sua conta. Além disso, as solicitações de uso e/ou gerenciamento da chave geram um custo de uso. Para obter mais detalhes, consulte Preços do AWS Key Management Service
Há casos em que um cliente pode querer um serviço da AWS para criptografar seus dados, mas não quer a sobrecarga de gerenciar chaves e não quer pagar por uma chave. Uma Chave gerenciada pela AWS é uma chave do KMS que existe na sua conta, mas que só pode ser usada sob determinadas circunstâncias. Mais especificamente, ela só pode ser usada no contexto do serviço da AWS em que você está operando e só pode ser usada pelas entidades principais da conta em que a chave existe. Você não pode gerenciar nada sobre o ciclo de vida ou as permissões dessas chaves. Ao usar recursos de criptografia em serviços da AWS, talvez você veja Chaves gerenciadas pela AWS; elas usam um alias no formato “aws<service code>”. Por exemplo, uma chave do aws/ebs só pode ser usada para criptografar volumes do EBS e somente para volumes usados por entidades principais do IAM na mesma conta da chave. Pense em uma Chave gerenciada pela AWS com um escopo reduzido para uso somente por usuários em sua conta para recursos em sua conta. Você não pode compartilhar com outras contas recursos criptografados em uma Chave gerenciada pela AWS. Embora a existência de uma Chave gerenciada pela AWS seja gratuita em sua conta, você receberá uma cobrança por qualquer uso desse tipo de chave pelo serviço da AWS atribuído à chave.
As Chaves gerenciadas pela AWS são um tipo de chave legada que não está mais sendo criado para novos serviços da AWS desde 2021. Em vez disso, serviços novos (e legados) da AWS estão usando o que é conhecido como uma Chave pertencente à AWS para criptografar os dados do cliente por padrão. Uma Chave pertencente à AWS é uma chave do KMS que está em uma conta gerenciada pelo serviço da AWS, de modo que os operadores do serviço tenham a capacidade de gerenciar seu ciclo de vida e permissões de uso. Ao usar Chaves pertencentes à AWS, os serviços da AWS podem criptografar seus dados de modo transparente e permitir o compartilhamento fácil de dados entre contas ou regiões sem que você precise se preocupar com as principais permissões. Use Chaves pertencentes à AWS para workloads criptografadas por padrão que promovem proteção de dados mais fácil e automatizada. Como essas chaves pertencem e são gerenciadas pela AWS, você não recebe cobranças pela existência ou uso delas, não pode alterar suas políticas, não pode auditar atividades nessas chaves e não pode excluí-las. Use chaves gerenciadas pelo cliente quando o controle for importante, mas use Chaves pertencentes à AWS quando a conveniência for mais importante.
| Chaves gerenciadas pelo cliente | Chaves gerenciadas pela AWS | Chaves pertencentes à AWS | |
| Política de chave | Controlada exclusivamente pelo cliente | Controlada pelo serviço; visível para o cliente | Controlada exclusivamente e visível apenas para o serviço da AWS que criptografa seus dados |
| Registro em log de | Trilha de cliente ou datastore de eventos do CloudTrail | Trilha de cliente ou datastore de eventos do CloudTrail | Não visível para o cliente |
| Gerenciamento de ciclo de vida | O cliente gerencia a alternância, a exclusão e a localização regional | O AWS KMS gerencia a alternância (anual), a exclusão e a localização regional | O AWS service (Serviço da AWS) gerencia a alternância, a exclusão e a localização regional |
| Preços |
Tarifa mensal por existência das chaves (pro rata por hora). Também há cobrança pelo uso da chave |
Sem taxa mensal; mas o chamador é cobrado pelo uso da API nessas chaves | Sem cobranças para o cliente |
As chaves do KMS que você cria são chaves gerenciadas pelo cliente. Os Serviços da AWSque usam chaves do KMS para criptografar seus recursos dos serviços geralmente criam chaves para você. As chaves do KMS que os Serviços da AWS criam em sua conta da AWS são Chaves gerenciadas pela AWS. As chaves do KMS que os Serviços da AWS criam em uma conta de serviço são Chaves pertencentes à AWS.
| Tipo de chave do KMS | Pode visualizar metadados da chave do KMS | Pode gerenciar a chave do KMS | Usado apenas para a minha Conta da AWS | Rotação automática | Preços |
|---|---|---|---|---|---|
| Chave gerenciada pelo cliente | Sim | Sim | Sim | Opcional. | 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 Tarifa por uso (alguns Serviços da AWS pagam essa tarifa para você) |
| Chave pertencente à AWS | Não | Não | Não | O AWS service (Serviço da AWS) gerencia a estratégia de rodízio | Nenhuma tarifa |
Os serviços da AWS que se integram ao AWS KMS são diferentes no que se refere ao suporte para chaves do KMS. Alguns serviços da AWS criptografam seus dados por padrão com uma Chave pertencente à AWS ou com uma Chave gerenciada pela AWS. Alguns serviços da AWS oferecem suporte a chaves gerenciadas pelo cliente. Outros serviços da AWS são compatíveis com todos os tipos de chaves do KMS para proporcionar a facilidade de uma Chave pertencente à AWS, a visibilidade de uma Chave gerenciada pela AWS ou o controle de uma chave gerenciada pelo cliente. Para obter informações detalhadas sobre as opções de criptografia oferecidas por um serviço da AWS, consulte o tópico Criptografia em repouso no manual do usuário ou no guia do desenvolvedor do serviço.
Chaves gerenciadas pelo cliente
As chaves do KMS que você cria são chaves gerenciadas pelo cliente. Chaves gerenciadas pelo cliente são chaves do KMS em sua Conta da AWS que você cria, detém e gerencia. Você tem controle total sobre essas chaves do KMS, incluindo estabelecer e manter suas políticas de chaves, políticas do IAM e concessões, além de habilitá-las e desabilitá-las, alternar seu material criptográfico, adicionar etiquetas, criar aliases que fazem referência às chaves do KMS e programar a exclusão de chaves do KMS.
Chaves gerenciadas pelo cliente são exibidas na página Customer managed keys (Chaves gerenciadas pelo cliente) do Console de gerenciamento da AWS para o AWS KMS. Para identificar definitivamente uma chave gerenciada pelo cliente, use a operação DescribeKey. Para chaves gerenciadas pelo cliente, o valor do campo KeyManager da resposta DescribeKey é CUSTOMER.
Você pode usar suas chaves gerenciadas pelo cliente em operações de criptografia e auditar o uso em logs do AWS CloudTrail. Além disso, muitos serviços da AWS que se integram com o AWS KMS permitem que você especifique uma chave gerenciada pelo cliente para proteger os dados armazenados e gerenciados.
Chaves gerenciadas pelo cliente geram uma taxa mensal e uma taxa para uso que excede o nível gratuito. Elas contam para as cotas do AWS KMS da sua conta. Para obter mais detalhes, consulte AWS Key Management Service Definição de preço
Chaves gerenciadas pela AWS
Chaves gerenciadas pela AWS são chaves do KMS em sua conta que são criadas, gerenciadas e usadas em seu nome por um serviço da AWS integrado ao AWS KMS
Alguns serviços da AWS permitem escolher uma Chave gerenciada pela AWS ou uma chave gerenciada pelo cliente para proteger os recursos que ele contém. Em geral, a menos que seja necessário controlar a chave de criptografia que protege os recursos, uma Chave gerenciada pela AWS é uma boa escolha. Você não precisa criar ou manter a chave ou sua política de chave, e nenhuma tarifa mensal é necessária para uma Chave gerenciada pela AWS.
Você tem permissão para visualizar as Chaves gerenciadas pela AWS na sua conta, visualizar suas políticas de chave e auditar seu uso em logs do AWS CloudTrail. Porém, não pode alterar nenhuma propriedade de Chaves gerenciadas pela AWS, alterná-las, modificar suas políticas de chave ou programá-las para exclusão. Você também não pode usar Chaves gerenciadas pela AWS em operações de criptografia de forma direta. Elas são usadas em seu nome pelo serviço que as cria.
As políticas de controle de recursos de sua organização não se aplicam a Chaves gerenciadas pela AWS.
Chaves gerenciadas pela AWS aparece na página Chaves gerenciadas pela AWS do Console de gerenciamento da AWS para o AWS KMS. Também é possível identificar Chaves gerenciadas pela AWS por seus aliases, que têm o formato aws/, como service-nameaws/redshift. Para identificar definitivamente uma Chaves gerenciadas pela AWS, use a operação DescribeKey. Para Chaves gerenciadas pela AWS, o valor do campo KeyManager da resposta DescribeKey é AWS.
Todas as Chaves gerenciadas pela AWS são alternadas automaticamente a cada ano. alternarNão é possível alterar essa programação de rotação.
nota
Em maio de 2022, o AWS KMS alterou o cronograma de alternância para Chaves gerenciadas pela AWS de a cada 3 anos (aproximadamente 1.095 dias) para a cada ano (aproximadamente 365 dias).
Não há uma tarifa mensal para Chaves gerenciadas pela AWS. Elas podem estar sujeitas a taxas de uso que excede o nível gratuito, mas alguns serviços da AWS abrangem 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 mais informações, consulte Definição de preço do AWS Key Management Service
Chaves gerenciadas pela AWSAs não são contabilizadas em relação às cotas de recursos para o número de chaves do KMS em cada região da sua conta. No entanto, quando usadas em nome de uma entidade principal na sua conta, essas chaves do KMS contam para as cotas de solicitações. Para obter detalhes, consulte Cotas.
Chaves pertencentes à AWS
Chaves pertencentes à AWS são uma coleção de chaves do KMS de propriedade de um serviço da AWS e que esse serviço gerencia para uso em várias Contas da AWS. Embora as Chaves pertencentes à AWS não estejam em sua Conta da AWS, um serviço da AWS pode usar uma Chave pertencente à AWS para proteger os recursos da conta.
Alguns serviços da AWS permitem escolher uma Chave pertencente à AWS ou uma chave gerenciada pelo cliente. Em geral, a menos que seja necessário auditar ou controlar a chave de criptografia que protege os recursos, uma Chave pertencente à AWS é uma boa escolha. Chaves pertencentes à AWS são totalmente gratuitas (sem tarifas mensais ou de uso), não contam para as cotas do AWS KMS da sua conta e são fáceis de usar. Você não precisa criar ou manter a chave ou sua política de chave.
A rotação das Chaves pertencentes à AWS varia de acordo com os serviços. Para obter informações sobre a rotação de uma Chave pertencente à AWS específica, consulte o tópico Criptografia em repouso no guia do usuário ou no guia do desenvolvedor do serviço.
Hierarquia do AWS KMS key
A sua hierarquia de chaves começa com uma chave lógica de nível superior, um AWS KMS key. Uma chave KMS representa um contêiner para o material de chave de nível superior e é definida exclusivamente dentro do namespace de serviço AWS com um Nome do Recurso Amazon (ARN). O ARN inclui um identificador de chave gerado exclusivamente, um ID de chave. Uma chave KMS é criada com base em uma solicitação iniciada pelo usuário por meio do AWS KMS. Após a recepção, o AWS KMS solicita a criação de uma chave de apoio HSM (HBK) inicial a ser colocada no contêiner de chaves KMS. O HBK é gerado em um HSM no domínio e foi projetado para nunca ser exportado do HSM em texto simples. Em vez disso, o HBK é exportado criptografado em chaves de domínio gerenciadas por HSM. Esses HBKs exportados são chamados de tokens de chave exportados (EKTs).
O EKT é exportado para um armazenamento altamente durável e de baixa latência. Por exemplo, suponha que você receba um ARN para a chave KMS lógica. Para você, isso representa o topo de uma hierarquia de chaves, ou contexto criptográfico. Você pode criar várias chaves KMS em sua conta e definir políticas em suas chaves KMS como qualquer outro recurso nomeado do AWS.
Dentro da hierarquia de uma chave KMS específica, o HBK pode ser considerado uma versão da chave KMS. Quando você deseja alternar a chave KMS através do AWS KMS, um novo HBK é criado e associado à chave KMS como o HBK ativo para a chave KMS. Os HBKs mais antigos são preservados e podem ser usados para descriptografar e verificar dados previamente protegidos. Mas somente a chave criptográfica ativa pode ser usada para proteger novas informações.
Você pode fazer solicitações por meio do AWS KMS para usar as suas chaves KMS para proteger diretamente as informações ou solicitar chaves adicionais geradas por HSM protegidas sob a sua chave KMS. Essas chaves são chamadas de chaves de dados do cliente, ou CDKs. As CDKs podem ser retornadas criptografadas como texto cifrado (CT), em texto simples ou ambos. Todos os objetos criptografados sob uma chave KMS (dados fornecidos pelo cliente ou chaves geradas pelo HSM) podem ser descriptografados somente em um HSM por meio de uma chamada através do AWS KMS.
O texto cifrado retornado, ou a carga descriptografada, nunca é armazenado no AWS KMS. As informações são retornadas a você através da sua conexão TLS com o AWS KMS. Isso também se aplica a chamadas feitas em seu nome pelos serviços do AWS.
A hierarquia de chaves e as propriedades específicas de chave aparecem na tabela a seguir.
| Chave | Descrição | Ciclo de vida |
|---|---|---|
|
Chave de domínio |
Uma chave AES-GCM de 256 bits somente na memória de um HSM usado para quebrar versões das chaves KMS, as chaves de reserva HSM. |
Alternado diariamente1 |
|
Chave de reserva HSM |
Uma chave simétrica de 256 bits ou chave privada RSA ou curva elíptica, usada para proteger dados e chaves do cliente e armazenada criptografada sob chaves de domínio. Uma ou mais chaves de apoio HSM formam a chave KMS, representada pelo keyID. |
Alternadas anualmente2 (configuração opcional) |
|
Chave de criptografia derivada |
Uma chave AES-GCM de 256 bits somente na memória de um HSM usado para criptografar dados e chaves do cliente. Derivado de um HBK para cada criptografia. |
Usado uma vez por criptografia e regenerado ao descriptografar |
|
Chave de dados do cliente |
Chave simétrica ou assimétrica definida pelo usuário exportada do HSM em texto simples e texto cifrado. Criptografado com uma chave de reserva HSM e retornado aos usuários autorizados pelo canal TLS. |
Alternância e uso controlados por aplicação |
1 AWS KMS O pode, de tempos em tempos, relaxar a alternância da chave de domínio para, no máximo, semanalmente, para lidar com tarefas de administração e configuração do domínio.
2 O Padrão Chaves gerenciadas pela AWS criado e gerenciado pelo AWS KMS em seu nome é alternado automaticamente cada ano.
Identificadores de chave (KeyId)
Identificadores de chave atuam como nomes para suas chaves do KMS. Eles ajudam a reconhecer suas chaves do KMS no console. Você poderá usá-las para indicar quais chaves do KMS deseja usar em operações de API do AWS KMS, políticas do IAM e concessões. Os valores do identificador de chave não estão completamente relacionados ao material de chaves associado à chave KMS.
AWS KMSO define vários identificadores de chave. Quando você cria uma chave do KMS, o AWS KMS gera um ARN e um ID de chave, que são propriedades da chave do KMS. Quando você cria um alias, o AWS KMS gera o ARN de alias com base no nome do alias que você define. É possível exibir os identificadores de chave e alias no Console de gerenciamento da AWS e na API do AWS KMS.
No console do AWS KMS, é possível visualizar e filtrar chaves do KMS por ARN de chave, ID de chave ou nome de alias e classificar por ID de chave e nome de alias. Para obter ajuda para encontrar os identificadores de chave no console, consulte Encontrar o ID e o ARN da chave.
Na API do AWS KMS, os parâmetros usados para identificar uma chave do KMS se chamam KeyId ou uma variação, como TargetKeyId ou DestinationKeyId. No entanto, os valores desses parâmetros não estão limitados a IDs de chave. 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 Referência de APIs do AWS Key Management Service.
nota
Ao usar a API do AWS KMS, preste atenção ao identificador de chave usado. APIs diferentes requerem identificadores de chave diferentes. Em geral, use o identificador de chave mais completo e prático para a sua tarefa.
AWS KMSO é compatível com os seguintes identificadores de chave.
- ARN de chave
-
O ARN de chave é o Amazon Resource Name (ARN) de uma chave do KMS. É um identificador exclusivo e totalmente qualificado para a chave do KMS. Um ARN de chave inclui a Conta da AWS, a região e o ID de chave. Para obter ajuda para encontrar o ARN de chave de uma chave do KMS, consulte Encontrar o ID e o ARN da chave.
O formato de um ARN de chave é o seguinte:
arn:<partition>:kms:<region>:<account-id>:key/<key-id>Veja a seguir um exemplo de ARN de chave para uma chave do KMS de região única.
arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890abO elemento
key-iddos ARNs de chaves de várias regiões começa com o prefixomrk-. Veja a seguir um exemplo de ARN de chave para uma chave do KMS de várias regiões.arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab
- ID da chave
-
O ID de chave identifica exclusivamente uma chave do KMS dentro de uma conta e uma região. Para obter ajuda para encontrar o ID de chave de uma chave do KMS, consulte Encontrar o ID e o ARN da chave.
Veja a seguir um exemplo de ID de chave para uma chave do KMS de região única.
1234abcd-12ab-34cd-56ef-1234567890abOs IDs de chave de chaves de várias regiões começam com o prefixo
mrk-. Veja a seguir um exemplo de ID de chave para uma chave do KMS de várias regiões.mrk-1234abcd12ab34cd56ef1234567890ab - ARN do alias
-
O ARN do alias é o Amazon Resource Name (ARN) de um alias do AWS KMS. É um identificador exclusivo e totalmente qualificado para o alias e para a chave do KMS que ele representa. Um ARN de alias inclui a Conta da AWS, a região e o nome do alias.
A qualquer momento, um ARN de alias identificará uma chave do KMS específica. No entanto, como é possível alterar a chaves do KMS associada ao alias, o ARN do alias pode identificar diferentes chaves do KMS em momentos diferentes. Para obter ajuda para encontrar o ARN de alias de uma chave do KMS, consulte Encontrar o nome e o ARN do alias para uma chave do KMS.
O formato de um ARN de alias é o seguinte:
arn:<partition>:kms:<region>:<account-id>:alias/<alias-name>Veja a seguir o ARN de alias de um fictício
ExampleAlias.arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias - Nome do alias
-
O nome do alias é uma string com até 256 caracteres. Ele identifica exclusivamente uma chave do KMS associada em uma conta e uma região. Na API do AWS KMS, os nomes de alias sempre começam com
alias/. Para obter ajuda para encontrar o nome de alias de uma chave do KMS, consulte Encontrar o nome e o ARN do alias para uma chave do KMS.O formato de um nome de alias é o seguinte:
alias/<alias-name>Por exemplo:
alias/ExampleAliasO prefixo
aws/de um nome de alias é reservado para Chaves gerenciadas pela AWS. Não é possível criar um alias com esse prefixo. Por exemplo, o nome do alias da Chave gerenciada pela AWS para o Amazon Simple Storage Service (Amazon S3) é o seguinte.alias/aws/s3