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.
Cómo AWS CloudTrail usa AWS KMS
En esta sección se describe cómo AWS KMS funciona un CloudTrail registro cifrado con una clave SSE-KMS.
importante
AWS CloudTrail y Amazon S3 solo son compatibles con sistemas simétricos AWS KMS keys. No puede utilizar una clave KMS asimétrica para cifrar sus registros. CloudTrail Para obtener ayuda para determinar si una clave de KMS es simétrica o asimétrica, consulte Identificación de distintos tipos de claves en la Guía para desarrolladores de AWS Key Management Service .
No paga ningún cargo por el uso de claves cuando CloudTrail lee o escribe archivos de registro cifrados con una clave SSE-KMS. Sin embargo, paga un cargo por el uso de la clave cuando accede a los archivos de CloudTrail registro cifrados con una clave SSE-KMS. Para obtener información sobre AWS KMS los precios, consulte AWS Key Management Service Precios.
Comprenda cuándo se usa su clave KMS para su ruta
El cifrado de archivos de CloudTrail registro AWS KMS se basa en la función de Amazon S3 denominada cifrado del lado del servidor con un AWS KMS key (SSE-KMS). Para obtener más información sobre SSE-KMS, consulte Uso del cifrado del lado del servidor con AWS KMS claves (SSE-KMS) en la Guía del usuario de Amazon Simple Storage Service.
Cuando configura AWS CloudTrail el SSE-KMS para cifrar sus archivos de registro y Amazon CloudTrail S3 lo usa AWS KMS keys cuando realiza determinadas acciones con esos servicios. En las secciones siguientes se explica cuándo y cómo dichos servicios pueden utilizar su clave KMS y se proporciona información adicional que puede utilizar para validar esta explicación.
Acciones que provocan CloudTrail que Amazon S3 utilice su clave de KMS
Se configura CloudTrail para cifrar los archivos de registro con su AWS KMS key
Al actualizar la CloudTrail configuración para usar la clave de KMS, CloudTrail envía una GenerateDataKey
solicitud AWS KMS para comprobar que la clave de KMS existe y que CloudTrail tiene permiso para utilizarla con fines de cifrado. CloudTrail no utiliza la clave de datos resultante.
La solicitud GenerateDataKey
incluye la siguiente información para el contexto de cifrado:
-
El nombre del recurso de Amazon (ARN) de la ruta CloudTrail
-
El ARN del depósito de S3 y la ruta donde se entregan los archivos de CloudTrail registro
La GenerateDataKey
solicitud da como resultado una entrada en CloudTrail los registros similar a la del siguiente ejemplo. Si ve una entrada de registro como esta, puede determinar que CloudTrail se ha realizado la AWS KMS GenerateDataKey
operación para un registro específico. AWS KMS creó la clave de datos con una clave de KMS específica.
{ "eventVersion": "1.09", "userIdentity": { "type": "AWSService", "invokedBy": "cloudtrail.amazonaws.com" }, "eventTime": "2024-12-06T20:14:46Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-1", "sourceIPAddress": "cloudtrail.amazonaws.com", "userAgent": "cloudtrail.amazonaws.com", "requestParameters": { "keySpec": "AES_256", "keyId": "arn:aws:kms:us-east-1:123456789012:key/example1-6736-4661-bf00-exampleeb770", "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1:123456789012:trail/management-events", "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket-123456789012-9af1fb49/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T2010Z_TO50OLMG1hIQ1png.json.gz" } }, "responseElements": null, "requestID": "a0555e85-7e8a-4765-bd8f-2222295558e1", "eventID": "e4f3557e-7dbd-4e37-a00a-d86c137d1111", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:123456789012:key/example1-6736-4661-bf00-exampleeb770" }], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "sharedEventID": "ce71d6be-0846-498e-851f-111a1af9078f", "eventCategory": "Management" }
CloudTrail coloca un archivo de registro en su bucket de S3
Cada vez que CloudTrail coloca un archivo de registro en su bucket de S3, Amazon S3 envía una GenerateDataKey
solicitud AWS KMS en su nombre CloudTrail. En respuesta a esta solicitud, AWS KMS genera una clave de datos única y, a continuación, envía a Amazon S3 dos copias de la clave de datos, una en texto sin formato y otra cifrada con la clave de KMS especificada. Amazon S3 utiliza la clave de datos de texto sin formato para cifrar el archivo de CloudTrail registro y, a continuación, elimina la clave de datos de texto sin formato de la memoria tan pronto como sea posible tras su uso. Amazon S3 almacena la clave de datos cifrados como metadatos con el archivo de CloudTrail registro cifrado.
La solicitud GenerateDataKey
incluye la siguiente información para el contexto de cifrado:
-
El nombre del recurso de Amazon (ARN) de la ruta CloudTrail
-
El ARN del objeto S3 (el archivo de CloudTrail registro)
Cada GenerateDataKey
solicitud da como resultado una entrada en CloudTrail los registros similar a la del siguiente ejemplo. Si ve una entrada de registro como esta, puede determinar que CloudTrail se ha realizado la AWS KMS GenerateDataKey
operación de un registro específico para proteger un archivo de registro específico. AWS KMS creó la clave de datos con la clave KMS especificada, que se muestra dos veces en la misma entrada de registro.
{ "eventVersion": "1.09", "userIdentity": { "type": "AWSService", "invokedBy": "cloudtrail.amazonaws.com" }, "eventTime": "2024-12-06T21:49:28Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-1", "sourceIPAddress": "cloudtrail.amazonaws.com", "userAgent": "cloudtrail.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1::trail/insights-trail", "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket1-123456789012-7867ab0c/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T2150Z_hVXmrJzjZk2wAM2V.json.gz" }, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a" }, "responseElements": null, "requestID": "11117d14-9232-414a-b3d1-01bab4dc9f99", "eventID": "999e9a50-512c-4e2a-84a3-111a5f511111", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "sharedEventID": "5e663acc-b7fd-4cdd-8328-0eff862952fa", "eventCategory": "Management" }
Obtenga un archivo de registro cifrado del bucket de S3
Cada vez que obtiene un archivo de CloudTrail registro cifrado de su bucket de S3, Amazon S3 envía una Decrypt
solicitud AWS KMS en su nombre para descifrar la clave de datos cifrados del archivo de registro. En respuesta a esta solicitud, AWS KMS utiliza la clave de KMS para descifrar la clave de datos y, a continuación, envía la clave de datos de texto sin formato a Amazon S3. Amazon S3 utiliza la clave de datos de texto sin formato para descifrar el archivo de CloudTrail registro y, a continuación, elimina la clave de datos de texto sin formato de la memoria tan pronto como sea posible tras su uso.
La solicitud Decrypt
incluye la siguiente información para el contexto de cifrado:
-
El nombre del recurso de Amazon (ARN) de la ruta CloudTrail
-
El ARN del objeto S3 (el archivo de CloudTrail registro)
Cada Decrypt
solicitud da como resultado una entrada en CloudTrail los registros similar a la del siguiente ejemplo. Cuando ve una entrada de registro como esta, puede determinar que un rol asumido se denominó AWS KMS Decrypt
operación para una ruta y un archivo de registro específicos. AWS KMS descifró la clave de datos con una clave KMS específica.
{ "eventVersion": "1.09", "userIdentity": { "type": "AssumedRole", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/Admin", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:role/Admin", "accountId": "123456789012", "userName": "Admin" }, "attributes": { "creationDate": "2024-12-06T22:04:04Z", "mfaAuthenticated": "false" } }, "invokedBy": "AWS Internal" }, "eventTime": "2024-12-06T22:26:34Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-1", "sourceIPAddress": "AWS Internal", "userAgent": "AWS Internal", "requestParameters": { "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1:123456789012:trail/insights-trail", "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket1-123456789012-7867ab0c/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T0000Z_aAAsHbGBdye3jp2R.json.gz" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "1ab2d2d2-111a-2222-a59b-11a2b3832b53", "eventID": "af4d4074-2849-4b3d-1a11-a1aaa111a111", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management", "sessionCredentialFromConsole": "true" }