Lambda siempre proporciona cifrado en reposo para los siguientes recursos mediante una Clave propiedad de AWS o una Clave administrada de AWS:
-
Variables de entorno
-
Archivos que carga en Lambda, incluidos los paquetes de implementación y los archivos de capas
-
Asignación de orígenes de eventos, objetos de criterios de filtrado
Si lo desea, puede configurar Lambda para que utilice una clave administrada por el cliente para cifrar las variables de entorno, los paquetes de implementación .zip y los objetos de criterios de filtrado.
Amazon CloudWatch Logs y AWS X-Ray también cifran los datos de manera predeterminada y se pueden configurar para utilizar una clave administrada por el cliente. Para obtener más información, consulte Encrypt log data in CloudWatch Logs y Data protection in AWS X-Ray.
Supervisión de las claves de cifrado para Lambda
Cuando utiliza una clave administrada por el cliente de AWS KMS con Lambda, puede utilizar AWS CloudTrail. Los ejemplos siguientes son eventos de CloudTrail para llamadas a Decrypt
, DescribeKey
y GenerateDataKey
que hace Lambda para acceder a los datos cifrados mediante la clave administrada por el cliente.
Si usó una clave administrada por el cliente de AWS KMS para cifrar el objeto de criterios de filtro, Lambda envía una solicitud Decrypt
en su nombre cuando intenta acceder a él en texto sin formato (por ejemplo, desde una llamada a ListEventSourceMappings
). El siguiente evento de ejemplo registra la operación Decrypt
:
{
"eventVersion": "1.09",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AROA123456789EXAMPLE:example",
"arn": "arn:aws:sts::123456789012:assumed-role/role-name/example",
"accountId": "123456789012",
"accessKeyId": "ASIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AROA123456789EXAMPLE",
"arn": "arn:aws:iam::123456789012:role/role-name",
"accountId": "123456789012",
"userName": "role-name"
},
"attributes": {
"creationDate": "2024-05-30T00:45:23Z",
"mfaAuthenticated": "false"
}
},
"invokedBy": "lambda.amazonaws.com"
},
"eventTime": "2024-05-30T01:05:46Z",
"eventSource": "kms.amazonaws.com",
"eventName": "Decrypt",
"awsRegion": "eu-west-1",
"sourceIPAddress": "lambda.amazonaws.com",
"userAgent": "lambda.amazonaws.com",
"requestParameters": {
"keyId": "arn:aws:kms:eu-west-1:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"encryptionContext": {
"aws-crypto-public-key": "ABCD+7876787678+CDEFGHIJKL/888666888999888555444111555222888333111==",
"aws:lambda:EventSourceArn": "arn:aws:sqs:eu-west-1:123456789012:sample-source",
"aws:lambda:FunctionArn": "arn:aws:lambda:eu-west-1:123456789012:function:sample-function"
},
"encryptionAlgorithm": "SYMMETRIC_DEFAULT"
},
"responseElements": null,
"requestID": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa",
"eventID": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb",
"readOnly": true,
"resources": [
{
"accountId": "AWS Internal",
"type": "AWS::KMS::Key",
"ARN": "arn:aws:kms:eu-west-1:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}
],
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "123456789012",
"eventCategory": "Management",
"sessionCredentialFromConsole": "true"
}