Recursos do AWS Key Management Service

Visão geral

O AWS Key Management Service (AWS KMS) oferece o controle das chaves criptográficas usadas para proteger seus dados. O AWS KMS oferece controle centralizado sobre o ciclo de vida e as permissões das chaves. Você pode criar novas chaves sempre que quiser e controlar quem pode gerenciar as chaves separadamente daqueles que irão usá-las. O serviço é integrado a outros serviços da AWS, facilitando a criptografia dos dados armazenados nesses serviços e o controle do acesso às chaves que os descriptografam. O AWS KMS também é integrado ao AWS CloudTrail, que ajuda a auditar quem usou quais chaves, em quais recursos e quando. O AWS KMS ajuda os desenvolvedores a adicionarem mais facilmente funcionalidades de criptografia ou assinatura digital aos código de aplicações, diretamente ou usando o AWS SDK. O SDK de criptografia da AWS oferece suporte ao AWS KMS como provedor de chaves para desenvolvedores que precisam criptografar/descriptografar dados localmente dentro das aplicações.

Page Topics

Principais recursos

Principais recursos

Se você tiver o AWS CloudTrail habilitado para sua conta da AWS, cada solicitação feita ao AWS KMS será registrada em um arquivo de log. Esse arquivo de log é entregue ao bucket do Amazon Simple Storage Service (Amazon S3) especificado quando você habilitou o AWS CloudTrail. As informações registradas incluem detalhes do usuário, hora, data, ação da API e, quando relevante, a chave usada.

O AWS KMS é um serviço gerenciado. Conforme cresce o seu uso da criptografia, o serviço escala automaticamente para atender às suas necessidades. Ele ajuda você a gerenciar milhares de chaves KMS na sua conta e a usá-las sempre que quiser. Ele define limites padrão para o número de chaves e as taxas de solicitação. No entanto, se necessário, é possível solicitar um aumento dos limites.

As chaves KMS que você cria ou as que são criadas em seu nome por outros serviços da AWS não podem ser exportadas do serviço. Portanto, o AWS KMS é responsável por sua resiliência. Para ajudar a confirmar que suas chaves e seus dados estejam altamente disponíveis, o AWS KMS armazena várias cópias de versões criptografadas de suas chaves em sistemas projetados para durabilidade de 99,999999999%.

Para dados criptografados ou fluxos de trabalho de assinatura digital que se deslocam entre regiões (recuperação de desastres, arquiteturas de alta disponibilidade multirregionais, DynamoDB Global Tables e assinaturas digitais consistentes distribuídas globalmente), você pode criar chaves KMS multirregionais. Chaves KMS multirregiões são um conjunto de chaves interoperáveis com o mesmo material de chave e IDs de chave que podem ser replicados em várias regiões.

O AWS KMS foi desenvolvido para ser um serviço altamente disponível com um endpoint regional de API. Como a maioria dos serviços da AWS depende dele para criptografia e descriptografia, o AWS KMS é arquitetado para fornecer um nível de disponibilidade. Essa disponibilidade sustenta o restante da AWS e é respaldada pelo Acordo de nível de serviço do AWS KMS.

O AWS KMS foi projetado para que ninguém, nem mesmo os funcionários da AWS, possam recuperar as chaves em texto simples do serviço. O serviço usa módulos de segurança de hardware (HSMs) que são continuamente validados de acordo com o Cryptographic Module Validation Program no Federal Information Processing Standards (FIPS) 140-2 do National Institute of Standards and Technology (NIST) para proteger a confidencialidade e a integridade das suas chaves. Os HSMs do AWS KMS constituem a raiz criptográfica de confiança para proteger chaves do KMS. Eles criam um limite seguro protegido por hardware para todas as operações criptográficas que ocorrem no KMS. Todo o material para chaves do KMS geradas nos HSMs do AWS KMS e todas as operações que exigem material descriptografado de chaves do KMS ocorrem estritamente dentro do limite de nível de segurança 3 do FIPS 140-2 desses HSMs. As atualizações do firmware de HSM do AWS KMS são monitoradas por um controle de acesso por várias partes, auditado e revisado por um grupo independente dentro da Amazon. Segundo os requisitos do FIPS 140, todas as alterações de firmware em HSMs do KMS são enviadas a um laboratório credenciado pelo NIST para validação em conformidade com o nível de segurança 3 do FIPS 140-2.

As chaves em texto simples nunca são gravadas em disco e são usadas exclusivamente na memória volátil dos HSMs pelo tempo necessário para executar as operações criptográficas solicitadas. Isso ocorre independentemente de você solicitar que o AWS KMS crie chaves em seu nome, importe-as para o serviço ou crie-as em um cluster do AWS CloudHSM usando o recurso de armazenamento de chaves personalizado. Você escolhe se deseja criar chaves de região única ou de várias regiões. As chaves de região única nunca são transmitidas fora da região da AWS em que foram criadas e só podem ser usadas na região em que foram criadas.
 

Para saber mais sobre a arquitetura do AWS KMS e a criptografia usada para proteger suas chaves, leia o whitepaper AWS KMS Cryptographic Details.

* Na região da AWS China (Pequim), operada pela Sinnet Technology Co., Ltd. ("Sinnet") de Pequim, e na região China (Ningxia), operada pela Ningxia Western Cloud Data Technology Co., Ltd. ("NWCD") NWCD, as HSMs são aprovadas pelo governo chinês (não validados pelo FIPS 140-2), e o whitepaper sobre os detalhes de criptografia, mencionado acima, não é aplicável.  

O AWS KMS ajuda a criar e usar chaves do KMS assimétricas e pares de chaves de dados. Você pode designar uma chave do KMS para uso como um par de chaves de assinatura, de criptografia ou de contrato de chaves. A geração de pares de chaves e as operações criptográficas assimétricas utilizando essas chaves do KMS são executadas dentro dos HSMs. Você pode solicitar a parte pública da chave assimétrica do KMS para uso em aplicações locais, enquanto a parte privada nunca sai do serviço. Você pode importar a parte privada de uma chave assimétrica de sua própria infraestrutura de gerenciamento de chaves.

Você também pode solicitar que o serviço gere um par de chaves de dados assimétricas. Essa operação retorna uma cópia da chave pública e da chave privada em texto simples e uma cópia da chave privada criptografada com a chave KMS simétrica que você especificou. Você pode usar a chave pública ou privada em texto simples na aplicação local e armazenar a cópia criptografada da chave privada para uso futuro.

** O armazenamento de chaves personalizadas não é compatível com as chaves assimétricas.

Você pode gerar e verificar o código de autenticação de mensagem por hash (HMACs) de dentro dos HSMs (módulos de segurança de hardware) validados pelo FIPS 140-2 do AWS KMS. Os HMACs são blocos de construção criptográfica que incorporam material da chave de segredo em uma função hash para criar um código exclusivo de autenticação de mensagem chaveada. As chaves HMAC do KMS oferecem uma vantagem sobre os HMACs do software de aplicação, porque o material da chave é gerado e usado inteiramente no AWS KMS. Ele também está sujeito aos controles de acesso que você define na chave. As chaves HMAC do KMS e os algoritmos HMAC que o AWS KMS usa estão em conformidade com os padrões do setor definidos em RFC 2104. As chaves HMAC do KMS são geradas em módulos de segurança de hardware do AWS KMS certificados no Programa de Validação de Módulo Criptográfico FIPS 140-2 e nunca deixam o AWS KMS sem criptografia. Você também pode importar sua própria chave HMAC de sua infraestrutura de gerenciamento de chaves particular.

*As chaves HMAC do AWS KMS não são compatíveis com os armazenamentos de chaves personalizadas.
** FIPS 140-2 não se aplica ao AWS KMS na região China (Pequim) da AWS, operada pela Sinnet, e na região China (Ningxia) da AWS, operada pela NWCD. Nas regiões da China, as HSMs são aprovadas para uso pelo governo chinês.

Os controles de segurança e qualidade no AWS KMS foram validados e certificados pelos seguintes regimes de conformidade:

O AWS KMS foi validado e certificado para os regimes de conformidade relacionados aqui.

* FIPS 140-2 não se aplica ao AWS KMS na região China (Pequim) da AWS, operada pela Sinnet, e na região China (Ningxia) da AWS, operada pela NWCD. Nas regiões da China, as HSMs são aprovadas para uso pelo governo chinês.

Os armazenamentos de chaves personalizadas combinam a interface prática e abrangente do gerenciamento de chaves do AWS KMS com a capacidade de ter e controlar os dispositivos nos quais o material da chave e as operações criptográficas ocorrem. Como resultado, você assume mais responsabilidade pela disponibilidade e durabilidade das chaves criptográficas e pela operação dos HSMs. O AWS KMS oferece dois tipos de armazenamento de chave personalizada:

Armazenamento de chave baseado no CloudHSM

Você pode criar uma chave do KMS em um armazenamento de chaves personalizadas do AWS CloudHSM, no qual todas as chaves são geradas e armazenadas em um cluster do AWS CloudHSM que você detém e gerencia. Quando você usa uma chave do KMS em um armazenamento de chaves personalizadas, as operações de criptografia realizadas com essa chave são executadas apenas em seu cluster do AWS CloudHSM.

O uso de um armazenamento de chaves personalizadas envolve o custo adicional do cluster do AWS CloudHSM, e você se torna responsável pela disponibilidade do material de chaves nesse cluster. Para obter orientação sobre a adequação dos armazenamentos de chaves personalizadas aos seus requisitos, consulte este blog.

Armazenamento de chave externa

Se você tiver uma necessidade regulamentar de armazenar e usar suas chaves de criptografia no local ou fora da Nuvem AWS, é possível criar uma chave do KMS em um armazenamento de chave externa do AWS KMS (XKS), no qual todas as chaves são geradas e armazenadas em um gerenciador de chaves externo fora da AWS que você possui e gerencia. Ao usar um XKS, seu material de chave nunca sai de seu HSM.

Ao contrário das chaves do KMS padrão ou de uma chave em um armazenamento de chaves personalizadas do CloudHSM, você é responsável pela durabilidade, disponibilidade, latência, desempenho e segurança do material da chave e pelas operações criptográficas de chaves externas ao usar um repositório de chaves externo. A performance e a disponibilidade das operações do KMS podem ser afetadas pelo hardware, software ou componentes de rede da infraestrutura XKS que você usa. Para saber mais sobre o XKS, leia este Blog de notícias da AWS.

*Armazenamentos das chaves personalizadas não estão disponíveis nas regiões da AWS China (Pequim), operada pela Sinnet e China (Ningxia), operada pela NWCD.
** O armazenamento de chaves personalizadas não está disponível para chaves KMS assimétricas.
*** O CodeArtifact não é compatível com chaves do KMS em um XKS.

Você pode usar o AWS KMS com bibliotecas de criptografia do lado do cliente para proteger os dados diretamente em seu aplicativo na AWS ou em ambientes híbridos e multinuvem. Você pode usar essas bibliotecas para criptografar dados antes de armazená-los nos serviços da AWS ou em qualquer outro meio de armazenamento e serviços de terceiros que desejar. Essas bibliotecas foram projetadas para ajudar você a criptografar e descriptografar dados usando padrões e práticas recomendadas do setor. As bibliotecas de criptografia permitem que você se concentre na funcionalidade principal do seu aplicativo e não em como criptografar e descriptografar seus dados.

  • O SDK de criptografia da AWS fornece uma biblioteca de criptografia de uso geral para implementar operações de criptografia e descriptografia em todos os tipos de dados.
  • O SDK de criptografia de banco de dados da AWS é uma biblioteca de criptografia que ajuda a proteger dados sigilosos armazenados em seu banco de dados e fornece atributos adicionais para pesquisar e consultar os dados criptografados.
  • O Amazon S3 Encryption Client é uma biblioteca de criptografia para criptografar e descriptografar objetos armazenados em seu bucket do S3.

Para saber mais, acesse a Documentação do AWS Crypto Tools.

Integração de produtos da AWS

O AWS KMS integra-se aos serviços da AWS para criptografar dados em repouso ou para facilitar a assinatura e a verificação usando uma chave do AWS KMS. Para proteger os dados em repouso, os serviços integrados da AWS usam criptografia envelopada, na qual uma chave de dados é usada para criptografar dados e é criptografada em uma chave KMS armazenada no AWS KMS. Para assinatura e verificação, os serviços integrados da AWS usam chaves KMS RSA ou ECC assimétricas no AWS KMS. Para obter mais detalhes sobre como um serviço integrado usa o AWS KMS, consulte a documentação do seu serviço da AWS.

Alexa for Business[1]

Amazon Forecast

Amazon QLDB

AWS CodeBuild

Amazon AppFlow

Amazon Fraud Detector

Amazon Redshift

AWS CodeCommit[1]

Amazon Athena

Amazon FSx

Amazon Rekognition

AWS CodePipeline

Amazon Aurora

Amazon GuardDuty

Amazon Relational Database Service (RDS)

AWS Control Tower

Ajuste Fino do Amazon Bedrock

Amazon HealthLake

Amazon Route 53

AWS Data Exchange

Cópia de Modelo do Amazon Bedrock

Amazon Inspector

Amazon Simple Storage Service (Amazon S3)[3]

AWS Database Migration Service

SDK do Amazon Chime

Amazon Kendra

Amazon SageMaker

AWS DeepRacer

Amazon CloudWatch Logs

Amazon Keyspaces (para Apache Cassandra)

Amazon Simple Email Service (SES)

AWS Elastic Disaster Recovery

Amazon CloudWatch Synthetics

Amazon Kinesis Data Streams

Amazon Simple Notification Service (SNS)

AWS Elemental MediaTailor

Amazon CodeGuru

Amazon Kinesis Firehose

Amazon Simple Queue Service (SQS)

AWS Entity Resolution

Amazon CodeWhisperer

Amazon Kinesis Video Streams

Amazon Textract

AWS GameLift

Amazon Comprehend

Amazon Lex

Amazon Timestream

AWS Glue

Amazon Connect

Amazon Lightsail[1]

Amazon Transcribe

AWS Glue DataBrew

Amazon Connect Customer Profiles

Amazon Location Service

Amazon Translate

AWS Ground Station

Amazon Connect Voice ID

Amazon Lookout for Equipment

Amazon WorkMail

AWS IoT SiteWise

Amazon Connect Wisdom

Amazon Lookout for Metrics

Amazon WorkSpaces

AWS Lambda

Amazon DocumentDB

Amazon Lookout for Vision

Amazon WorkSpaces Thin Client

AWS License Manager

Amazon DynamoDB

Amazon Macie

Amazon WorkSpaces Secure Browser

AWS Mainframe Modernization

Amazon DynamoDB Accelerator (DAX)[1]

Amazon Managed Blockchain

AWS AppConfig

AWS Network Firewall

Amazon EBS

Amazon Managed Service for
Prometheus

AWS AppFabric

AWS Proton

Amazon EC2 Image Builder

Amazon Managed Streaming for Kafka (MSK)

AWS Application Cost Profiler

AWS Secrets Manager

Amazon EFS

Amazon Managed Workflows for Apache Airflow (MWAA)

AWS Application Migration Service

AWS Snowball 

Amazon Elastic Container Registry (ECR)

Amazon MemoryDB

AWS App Runner

AWS Snowball Edge

Amazon Elastic Kubernetes Service (EKS)

Amazon Monitron

AWS Audit Manager

AWS Snowcone

Amazon Elastic Transcoder

Amazon MQ

AWS Backup

AWS Storage Gateway

Amazon ElastiCache

Amazon Neptune

AWS Certificate Manager[1]

AWS Systems Manager

Amazon EMR

Amazon Nimble Studio

AWS Cloud9[1]

Cadeia de Suprimentos AWS

Amazon EMR Sem Servidor

Amazon OpenSearch

AWS CloudHSM[2]

Acesso Verificado pela AWS

Agendador do Amazon EventBridge

Amazon Omics

AWS CloudTrail

AWS X-Ray

Amazon FinSpace

Amazon Personalize

AWS CodeArtifact

 

[1] Compatível somente com chaves gerenciadas pela AWS.

[2] O AWS KMS é compatível com armazenamento de chaves personalizadas respaldado por um cluster do AWS CloudHSM.

[3] Para obter uma lista de serviços integrados ao AWS KMS nas regiões da AWS China (Pequim), operada pela Sinnet, e AWS China (Ningxia), operada pela NWCD, consulte a integração do AWS KMS Service na China.

Os serviços da AWS não listados acima criptografam os dados do cliente usando chaves pertencentes ao respectivo serviço e por ele gerenciadas.