Cifrado de datos en reposo para Amazon Location Service - Amazon Location Service

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.

Cifrado de datos en reposo para Amazon Location Service

Amazon Location Service proporciona cifrado de forma predeterminada para proteger los datos confidenciales de los clientes en reposo mediante claves de cifrado AWS propias.

  • AWS claves propias: Amazon Location utiliza estas claves de forma predeterminada para cifrar automáticamente los datos de identificación personal. No puedes ver, administrar ni usar las claves AWS propias, ni auditar su uso. Sin embargo, no tiene que realizar ninguna acción ni cambiar ningún programa para proteger las claves que cifran sus datos. Para obtener más información, consulte las claves propiedad deAWS en la Guía para desarrolladores deAWS Key Management Service .

El cifrado de los datos en reposo de forma predeterminada ayuda a reducir la sobrecarga operativa y la complejidad que implica la protección de los datos confidenciales. Al mismo tiempo, le permite crear aplicaciones seguras que cumplen con los estrictos requisitos normativos y de conformidad con el cifrado.

Si bien no puedes deshabilitar esta capa de cifrado ni seleccionar un tipo de cifrado alternativo, puedes añadir una segunda capa de cifrado sobre las claves de cifrado que ya poseas AWS si eliges una clave gestionada por el cliente al crear tus recursos de recopilación de rastreadores y cercas geográficas:

  • Claves administradas por el cliente: Amazon Location admite el uso de una clave simétrica administrada por el cliente que usted crea, posee y administra para agregar una segunda capa de cifrado sobre el cifrado propio existente AWS . Como usted tiene el control total de este cifrado, puede realizar dichas tareas como:

    • Establecer y mantener políticas de claves

    • Establecer y mantener concesiones y políticas de IAM

    • Habilitar y deshabilitar políticas de claves

    • Rotar el material criptográfico

    • Añadir etiquetas

    • Crear alias de clave

    • Programar la eliminación de claves

    Para obtener más información, consulte las claves administradas por el cliente en la  Guía para desarrolladores deAWS Key Management Service .

En la siguiente tabla se resume cómo Amazon Location cifra los datos de identificación personal.

Tipo de datos AWS cifrado de clave propia Cifrado de claves administradas por el cliente (opcional)
Position

Una geometría de puntos que contiene los detalles de la posición del dispositivo.

Habilitado Habilitado
PositionProperties

Un conjunto de pares clave-valor asociados con la actualización de posición.

Habilitado Habilitado
GeofenceGeometry

Geometría de una geovalla poligonal que representa el área geovallada.

Habilitado Habilitado
DeviceId

El identificador del dispositivo especificado al cargar una actualización de la posición del dispositivo en un recurso de rastreo.

Habilitado No compatible
GeofenceId

Un identificador que se especifica al almacenar una geometría de geovalla o un lote de geovallas en una colección de geovallas determinada.

Habilitado No compatible
nota

Amazon Location permite automáticamente el cifrado en reposo mediante claves AWS propias para proteger los datos de identificación personal sin coste alguno.

Sin embargo, se aplican AWS KMS cargos por el uso de una clave administrada por el cliente. Para obtener más información acerca de los precios, consulte Precios deAWS Key Management Service.

Para obtener más información AWS KMS, consulte ¿Qué es AWS Key Management Service?

Cómo utiliza Amazon Location Service las subvenciones en AWS KMS

Amazon Location requiere una concesión para utilizar su clave administrada por el cliente.

Cuando creas un recurso de rastreo o una colección de geovallas cifrada con una clave gestionada por el cliente, Amazon Location crea una subvención en tu nombre enviando una CreateGrantsolicitud a. AWS KMSLas concesiones in se AWS KMS utilizan para dar acceso a Amazon Location a una clave de KMS en la cuenta de un cliente.

Amazon Location necesita la concesión para utilizar la clave administrada por el cliente para las siguientes operaciones internas:

  • Envíe DescribeKeysolicitudes AWS KMS a para comprobar que el identificador de clave de KMS simétrico gestionado por el cliente introducido al crear un rastreador o una colección de geovallas es válido.

  • Envíe GenerateDataKeyWithoutPlaintextsolicitudes AWS KMS para generar claves de datos cifradas por su clave administrada por el cliente.

  • Envíe solicitudes de descifrado AWS KMS a para descifrar las claves de datos cifrados para que puedan usarse para cifrar sus datos.

Puede revocar el acceso a la concesión o eliminar el acceso del servicio a la clave administrada por el cliente en cualquier momento. Si lo hace, Amazon Location no podrá acceder a ninguno de los datos cifrados por la clave administrada por el cliente, lo que afectará a las operaciones que dependen de esos datos. Por ejemplo, si intentas obtener las posiciones de los dispositivos a partir de un rastreador cifrado al que Amazon Location no puede acceder, la operación mostrará un AccessDeniedException error.

Crear una clave administrada por el cliente

Puede crear una clave simétrica gestionada por el cliente mediante las API o las API AWS Management Console. AWS KMS

Para crear una clave simétrica administrada por el cliente

Siga los pasos para crear una clave simétrica administrada por el cliente que se indican en la AWS Key Management Service Guía para desarrolladores.

Política de claves

Las políticas de clave controlan el acceso a la clave administrada por el cliente. Cada clave administrada por el cliente debe tener exactamente una política de clave, que contiene instrucciones que determinan quién puede usar la clave y cómo puede utilizarla. Cuando crea la clave administrada por el cliente, puede especificar una política de clave. Para obtener más información, consulte Administración del acceso a las claves administradas por el cliente en la Guía para desarrolladores deAWS Key Management Service .

Para utilizar la clave administrada por el cliente con sus recursos de Amazon Location, se deben permitir las siguientes operaciones de API en la política de claves:

  • kms:CreateGrant: añade una concesión a una clave administrada por el cliente. Otorga el acceso de control a una clave KMS específica, que permite acceder a las operaciones de concesión que requiere Amazon Location. Para obtener más información sobre el Uso de concesiones, consulte la Guía para desarrolladores deAWS Key Management Service .

    Esto permite a Amazon Location realizar las siguientes tareas:

    • Llamar a GenerateDataKeyWithoutPlainText para generar una clave de datos cifrada y almacenarla, ya que la clave de datos no se utiliza inmediatamente para cifrar.

    • Llamar a Decrypt para usar la clave de datos cifrados almacenada para acceder a los datos cifrados.

    • Configurar una entidad principal que se retire para permitir que el servicio RetireGrant.

  • kms:DescribeKey: proporciona los detalles de la clave administrada por el cliente para permitir que el servicio de Amazon Location valide la clave.

Los siguientes son ejemplos de declaraciones de política que puede agregar para Amazon Location:

"Statement" : [ { "Sid" : "Allow access to principals authorized to use Amazon Location", "Effect" : "Allow", "Principal" : { "AWS" : "*" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant" ], "Resource" : "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "geo.region.amazonaws.com", "kms:CallerAccount" : "111122223333" } }, { "Sid": "Allow access for key administrators", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:*" ], "Resource": "arn:aws:kms:region:111122223333:key/key_ID" }, { "Sid" : "Allow read-only access to key metadata to the account", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:Describe*", "kms:Get*", "kms:List*", "kms:RevokeGrant" ], "Resource" : "*" } ]

Para obtener más información sobre cómo especificar permisos en una política, consulte la Guía para desarrolladores deAWS Key Management Service .

Para obtener información sobre la solución de problemas de acceso a las claves, consulte la Guía para desarrolladores deAWS Key Management Service .

Especificar una clave administrada por el cliente para Amazon Location

Puede especificar una clave administrada por el cliente como cifrado de segunda capa para los siguientes recursos:

Al crear un recurso, puede especificar la clave de datos introduciendo un ID de KMS, que Amazon Location utiliza para cifrar los datos personales identificables almacenados en el recurso.

  • ID de KMS: identificador clave de una clave gestionada por el AWS KMS cliente. Introduzca el ID de la clave, el ARN de la clave, el nombre de alias o el ARN del alias.

Contexto de cifrado de Amazon Location Service

Un contexto de cifrado es un conjunto opcional de pares clave-valor que pueden contener información contextual adicional sobre los datos.

AWS KMS utiliza el contexto de cifrado como datos autenticados adicionales para respaldar el cifrado autenticado. Al incluir un contexto de cifrado en una solicitud de cifrado de datos, AWS KMS vincula el contexto de cifrado a los datos cifrados. Para descifrar los datos, debe incluir el mismo contexto de cifrado en la solicitud.

Contexto de cifrado de Amazon Location Service

Amazon Location utiliza el mismo contexto de cifrado en todas las operaciones AWS KMS criptográficas, donde la clave es aws:geo:arn y el valor es el nombre de recurso de Amazon (ARN) del recurso.

"encryptionContext": { "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection" }

Uso del contexto de cifrado para la supervisión

Si utiliza una clave simétrica gestionada por el cliente para cifrar su rastreador o su colección de geovallas, también puede utilizar el contexto de cifrado en los registros y registros de auditoría para identificar cómo se utiliza la clave gestionada por el cliente. El contexto de cifrado también aparece en los registros generados por AWS CloudTrail Amazon CloudWatch Logs.

Utilizar el contexto de cifrado para controlar el acceso a la clave administrada por el cliente

Puede utilizar el contexto de cifrado en las políticas de claves y las políticas de IAM como conditions para controlar el acceso a la clave simétrica administrada por el cliente. Puede usar también una restricción de contexto de cifrado en una concesión.

Amazon Location utiliza el contexto de cifrado para restringir las concesiones que permiten el acceso a la clave administrada por el cliente o a en su cuenta y región. La restricción de concesión requiere que las operaciones que permite la concesión utilicen el contexto de cifrado especificado.

Los siguientes son ejemplos de declaraciones de política clave para conceder acceso a una clave administrada por el cliente para un contexto de cifrado específico. La condición de esta declaración de política exige que las concesiones tengan una restricción de contexto de cifrado que especifique el contexto de cifrado.

{ "Sid": "Enable DescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:DescribeKey", "Resource": "*" }, { "Sid": "Enable CreateGrant", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:tracker/SAMPLE-Tracker" } } }

Supervisión de las claves de cifrado para Amazon Location Service

Cuando utilizas una clave gestionada por el AWS KMS cliente con tus recursos de Amazon Location Service, puedes utilizar AWS CloudTrailAmazon CloudWatch Logs para realizar un seguimiento de las solicitudes a las que Amazon Location envía AWS KMS.

Los siguientes ejemplos son AWS CloudTrail eventos para CreateGrant GenerateDataKeyWithoutPlainTextDecrypt, y DescribeKey para monitorear las operaciones de KMS llamadas por Amazon Location para acceder a los datos cifrados por la clave administrada por el cliente:

CreateGrant

Cuando utilizas una clave gestionada por el AWS KMS cliente para cifrar tu rastreador o los recursos de recolección de geovallas, Amazon Location envía una CreateGrant solicitud en tu nombre para acceder a la clave KMS de tu cuenta. AWS La concesión que Amazon Location crea es específica para el recurso asociado a la clave administrada por el cliente AWS KMS . Además, Amazon Location utiliza la operación RetireGrant para eliminar una concesión cuando se elimina un recurso.

El siguiente evento de ejemplo registra la operación de CreateGrant:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE3", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "geo.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "retiringPrincipal": "geo.region.amazonaws.com", "operations": [ "GenerateDataKeyWithoutPlaintext", "Decrypt", "DescribeKey" ], "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "granteePrincipal": "geo.region.amazonaws.com" }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }
GenerateDataKeyWithoutPlainText

Cuando habilitas una clave gestionada por el AWS KMS cliente para tu rastreador o recurso de recolección de geovallas, Amazon Location crea una clave de tabla única. Envía una GenerateDataKeyWithoutPlainText solicitud a la AWS KMS que se especifica la clave gestionada por el AWS KMScliente para el recurso.

El siguiente evento de ejemplo registra la operación de GenerateDataKeyWithoutPlainText:

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "geo.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKeyWithoutPlaintext", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "encryptionContext": { "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection" }, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333", "sharedEventID": "57f5dbee-16da-413e-979f-2c4c6663475e" }
Decrypt

Cuando accedes a un rastreador cifrado o a una colección de geovallas, Amazon Location solicita a la operación de Decrypt que utilice la clave de datos cifrados almacenada para acceder a los datos cifrados.

El siguiente evento de ejemplo registra la operación de Decrypt:

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "geo.amazonaws.com" }, "eventTime": "2021-04-22T17:10:51Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "encryptionContext": { "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection" }, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333", "sharedEventID": "dc129381-1d94-49bd-b522-f56a3482d088" }
DescribeKey

Amazon Location utiliza la operación de DescribeKey para verificar si la clave gestionada por el cliente de AWS KMS asociada a su rastreador o colección de geovallas existe en la cuenta y la región.

El siguiente evento de ejemplo registra la operación de DescribeKey:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE3", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "geo.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "keyId": "00dd0db0-0000-0000-ac00-b0c000SAMPLE" }, "responseElements": null, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }

Más información

Los siguientes recursos proporcionan más información sobre cifrado de datos en reposo.