Cifre un detector de anomalías y sus resultados con AWS KMS - Amazon CloudWatch Logs

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cifre un detector de anomalías y sus resultados con AWS KMS

Los datos del detector de anomalías siempre se cifran en los registros. CloudWatch De forma predeterminada, CloudWatch Logs utiliza el cifrado del lado del servidor para los datos en reposo. Como alternativa, puede utilizar AWS Key Management Service para este cifrado. Si lo hace, el cifrado se realiza mediante una AWS KMS clave. AWS KMS El uso del cifrado se habilita en el nivel del detector de anomalías, asociando una KMS clave a un detector de anomalías.

importante

CloudWatch Los registros solo admiten claves simétricas. KMS No utilice una clave asimétrica administrada por el cliente para cifrar los datos de los grupos de registros. Para obtener más información, consulte Utilización de claves simétricas y asimétricas.

Límites

  • Para realizar los siguientes pasos, debe tener los siguientes permisos: kms:CreateKey, kms:GetKeyPolicy y kms:PutKeyPolicy.

  • Después de asociar o desvincular una clave desde un detector de anomalías, la operación puede tardar hasta cinco minutos en surtir efecto.

  • Si revoca el acceso de CloudWatch Logs a una clave asociada o elimina una KMS clave asociada, los datos cifrados de los CloudWatch registros ya no se podrán recuperar.

Paso 1: Crea una clave AWS KMS

Para crear una KMS clave, usa el siguiente comando create-key:

aws kms create-key

El resultado contiene el ID de clave y el nombre de recurso de Amazon (ARN) de la clave. A continuación, se muestra un ejemplo de la salida:

{ "KeyMetadata": { "Origin": "AWS_KMS", "KeyId": "key-default-1", "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/key-default-1", "AWSAccountId": "123456789012", "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ] } }

Paso 2: Defina los permisos de la KMS clave

De forma predeterminada, todas AWS KMS las claves son privadas. Solo el propietario del recurso puede utilizarla para cifrar y descifrar datos. Sin embargo, el propietario del recurso puede conceder permisos para acceder a la KMS clave a otros usuarios y recursos. Con este paso, se otorga al servicio de CloudWatch registros el permiso principal para usar la clave. El principal de este servicio debe estar en la misma AWS región en la que se almacena la KMS clave.

Como práctica recomendada, le recomendamos que restrinja el uso de la KMS clave solo a las AWS cuentas o detectores de anomalías que especifique.

En primer lugar, guarde la política predeterminada de su KMS clave policy.json mediante el siguiente get-key-policycomando:

aws kms get-key-policy --key-id key-id --policy-name default --output text > ./policy.json

Abra el archivo policy.json en un editor de texto y agregue la sección en negrita desde una de las instrucciones siguientes. Separe la instrucción existente de la nueva instrucción con una coma. Estas instrucciones utilizan Condition secciones para mejorar la seguridad de la AWS KMS clave. Para obtener más información, consulte AWS KMS claves y contexto de cifrado.

La sección Condition de este ejemplo limita la utilización de la clave AWS KMS en la cuenta especificada, pero se puede utilizar para cualquier detector de anomalías.

{ "Version": "2012-10-17", "Id": "key-default-1", "Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Your_account_ID:root" }, "Action": "kms:*", "Resource": "*" }, { "Effect": "Allow", "Principal": { "Service": "logs.REGION.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "ArnLike": { "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:REGION:Your_account_ID:anomaly-detector:*" } } }, { "Effect": "Allow", "Principal": { "Service": "logs.REGION.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "ArnLike": { "kms:EncryptionContext:aws-crypto-ec:aws:logs:arn": "arn:aws:logs:REGION:Your_account_ID:anomaly-detector:*" } } } ] }

Por último, añada la política actualizada mediante el siguiente put-key-policycomando:

aws kms put-key-policy --key-id key-id --policy-name default --policy file://policy.json

Paso 3: Asociar una KMS clave a un detector de anomalías

Puede asociar una KMS clave a un detector de anomalías al crearla en la consola o mediante la AWS CLI tecla o. APIs

Paso 4: desvincular una clave de un detector de anomalías

Una vez que ha asociado una clave a un detector de anomalías, la clave no se puede actualizar. La única forma de eliminar la clave es eliminar el detector de anomalías y, a continuación, volver a crearlo.