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á.
Criptografe os resultados da consulta com AWS Key Management Service
Por padrão, o CloudWatch Logs criptografa os resultados armazenados de suas consultas do CloudWatch Logs Insights usando o método padrão de criptografia do lado do servidor do CloudWatch Logs. Em vez disso, você pode optar por usar uma AWS KMS chave para criptografar esses resultados. Se você associar uma AWS KMS chave aos resultados da criptografia, o CloudWatch Logs usará essa chave para criptografar os resultados armazenados de todas as consultas na conta.
Se, posteriormente, você desassociar a chave dos resultados da consulta, o CloudWatch Logs retornará ao método de criptografia padrão para consultas posteriores. Mas as consultas executadas enquanto a chave estava associada ainda são criptografadas com essa chave. CloudWatch Os registros ainda podem retornar esses resultados após a desassociação da KMS chave, porque CloudWatch os registros ainda podem continuar referenciando a chave. No entanto, se a chave for desativada posteriormente, o CloudWatch Logs não conseguirá ler os resultados da consulta que foram criptografados com essa chave.
Importante
CloudWatch O Logs suporta somente KMS chaves simétricas. Não use uma chave assimétrica para criptografar os resultados da consulta. Para obter mais informações, consulte Usar chaves simétricas e assimétricas.
Limites
-
Para executar as etapas a seguir, é necessário ter as seguintes permissões:
kms:CreateKey
,kms:GetKeyPolicy
ekms:PutKeyPolicy
. -
Após uma chave ser associada ou desassociada dos resultados da consulta, até cinco minutos poderão ser necessários para que a operação seja efetivada.
-
Se você revogar o acesso do CloudWatch Logs a uma chave associada ou excluir uma KMS chave associada, seus dados criptografados no CloudWatch Logs não poderão mais ser recuperados.
-
Você não pode usar o CloudWatch console para associar uma chave, você deve usar o AWS CLI ou CloudWatch LogsAPI.
Etapa 1: criar um AWS KMS key
Para criar uma KMS chave, use o seguinte comando create-key:
aws kms create-key
A saída contém o ID da chave e o Amazon Resource Name (ARN) da chave. A seguir está um exemplo de saída:
{
"KeyMetadata": {
"Origin": "AWS_KMS",
"KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
"Description": "",
"KeyManager": "CUSTOMER",
"Enabled": true,
"CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
"KeyUsage": "ENCRYPT_DECRYPT",
"KeyState": "Enabled",
"CreationDate": 1478910250.94,
"Arn": "arn:aws:kms:us-west-2:123456789012:key/6f815f63-e628-448c-8251-e40cb0d29f59",
"AWSAccountId": "123456789012",
"EncryptionAlgorithms": [
"SYMMETRIC_DEFAULT"
]
}
}
Etapa 2: definir permissões na KMS chave
Por padrão, todas KMS as chaves são privadas. Somente o proprietário do recurso pode usá-la para criptografar e descriptografar dados. No entanto, o proprietário do recurso pode conceder permissões para acessar a chave a outros usuários e recursos. Com essa etapa, você concede permissão principal ao serviço de CloudWatch registros para usar a chave. Esse principal de serviço deve estar na mesma AWS região em que a chave está armazenada.
Como prática recomendada, recomendamos que você restrinja o uso da chave somente às AWS contas que você especificar.
Primeiro, salve a política padrão para sua KMS chave policy.json
usando o seguinte get-key-policycomando:
aws kms get-key-policy --key-id
key-id
--policy-name default --output text > ./policy.json
Abra o arquivo policy.json
em um editor de texto e adicione a seção em negrito de uma das instruções a seguir. Separe a instrução existente da nova instrução com uma vírgula. Essas declarações usam Condition
seções para aumentar a segurança da AWS KMS chave. Para obter mais informações, consulte Chaves do AWS KMS e contexto de criptografia.
A Condition
seção neste exemplo limita o uso da AWS KMS chave para os resultados da consulta do CloudWatch Logs Insights na conta especificada.
{ "Version": "2012-10-17", "Id": "key-default-1", "Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
account_ID
:root" }, "Action": "kms:*", "Resource": "*" }, { "Effect": "Allow", "Principal": { "Service": "logs.region
.amazonaws.com" }, "Action": [ "kms:Encrypt*", "kms:Decrypt*", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:Describe*" ], "Resource": "*", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:logs:region
:account_ID
:query-result:*" }, "StringEquals": { "aws:SourceAccount": "Your_account_ID
" } } } ] }
Por fim, adicione a política atualizada usando o seguinte put-key-policycomando:
aws kms put-key-policy --key-id
key-id
--policy-name default --policy file://policy.json
Etapa 3: associar uma KMS chave aos resultados da consulta
Para associar a KMS chave aos resultados da consulta na conta
Use o comando disassociate-kms-key da seguinte forma:
aws logs associate-kms-key --resource-identifier "arn:aws:logs:
region
:account-id
:query-result:*" --kms-key-id "key-arn
"
Etapa 4: desassociar uma chave dos resultados da consulta na conta
Para desassociar a KMS chave associada aos resultados da consulta, use o seguinte disassociate-kms-keycomando:
aws logs disassociate-kms-key --resource-identifier "arn:aws:logs:
region
:account-id
:query-result:*"