Criptografia de dados em repouso para o Amazon Location Service - Amazon Location Service

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á.

Criptografia de dados em repouso para o Amazon Location Service

O Amazon Location Service fornece criptografia por padrão para proteger dados confidenciais de clientes em repouso usando chaves de criptografia AWS próprias.

  • AWS chaves próprias — A Amazon Location usa essas chaves por padrão para criptografar automaticamente dados de identificação pessoal. Você não pode visualizar, gerenciar ou usar chaves AWS próprias nem auditar seu uso. No entanto, não é necessário tomar nenhuma medida nem alterar qualquer programa para proteger as chaves que criptografam seus dados. Para obter mais informações, consulte chaves de propriedade da AWS no Guia do desenvolvedor do AWS Key Management Service .

A criptografia de dados em repouso por padrão reduz a sobrecarga operacional e a complexidade envolvidas na proteção de dados confidenciais. Ao mesmo tempo, ela permite que você crie aplicações seguras que atendam aos rigorosos requisitos regulatórios e de conformidade de criptografia.

Embora você não possa desativar essa camada de criptografia ou selecionar um tipo de criptografia alternativo, você pode adicionar uma segunda camada de criptografia sobre as chaves de criptografia de AWS propriedade existentes escolhendo uma chave gerenciada pelo cliente ao criar seus recursos de rastreamento e coleta de cerca geográfica:

  • Chaves gerenciadas pelo cliente — O Amazon Location suporta o uso de uma chave simétrica gerenciada pelo cliente que você cria, possui e gerencia para adicionar uma segunda camada de criptografia sobre a criptografia existente AWS . Como você tem controle total dessa camada de criptografia, é possível realizar tarefas como:

    • Estabelecer e manter as políticas de chave

    • Estabelecer e manter subsídios e IAM policies

    • Habilitar e desabilitar políticas de chaves

    • Alternar os materiais de criptografia de chave

    • Adicionar etiquetas

    • Criar réplicas de chaves

    • Programar chaves para exclusão

    Para obter mais informações, consulte chave gerenciada pelo cliente no Guia do desenvolvedor do AWS Key Management Service .

A tabela abaixo resume como o Amazon Location criptografa os dados de identificação pessoal.

Tipo de dados AWS criptografia de chave própria Criptografia de chave gerenciada pelo cliente (opcional)
Position

Uma geometria de pontos contendo os detalhes da posição do dispositivo.

Habilitado Habilitado
PositionProperties

Um conjunto de pares de chave-valor associados à atualização da posição.

Habilitado Habilitado
GeofenceGeometry

Uma geometria de geocerca poligonal representando a área geocercada.

Habilitado Habilitado
DeviceId

Identificador do dispositivo especificado ao fazer o upload de uma atualização da posição do dispositivo para um recurso do rastreador.

Habilitado Sem compatibilidade
GeofenceId

Um identificador especificado ao armazenar uma geometria de geocercas ou um lote de geocercas em uma determinada coleção de geocercas.

Habilitado Sem compatibilidade
nota

O Amazon Location habilita automaticamente a criptografia em repouso usando chaves AWS próprias para proteger dados de identificação pessoal sem nenhum custo.

No entanto, AWS KMS cobranças são cobradas pelo uso de uma chave gerenciada pelo cliente. Para obter mais informações sobre preços, consulte definição de preços da AWS Key Management Service.

Para obter mais informações sobre AWS KMS, consulte O que é AWS Key Management Service?

Como o Amazon Location Service usa subsídios em AWS KMS

O Amazon Location exige uma concessão para usar sua chave gerenciada pelo cliente.

Quando você cria um recurso de rastreamento ou uma coleção de cercas geográficas criptografada com uma chave gerenciada pelo cliente, a Amazon Location cria uma concessão em seu nome enviando uma CreateGrantsolicitação para. AWS KMS As concessões AWS KMS são usadas para dar à Amazon Location acesso a uma chave KMS em uma conta de cliente.

O Amazon Location exige a concessão para usar sua chave gerenciada pelo cliente para as seguintes operações internas:

  • Envie DescribeKeysolicitações para verificar se AWS KMS a ID simétrica da chave KMS gerenciada pelo cliente inserida ao criar um rastreador ou uma coleção de cercas geográficas é válida.

  • Envie GenerateDataKeyWithoutPlaintextsolicitações AWS KMS para gerar chaves de dados criptografadas pela chave gerenciada pelo cliente.

  • Envie solicitações de descriptografia para AWS KMS descriptografar as chaves de dados criptografadas para que elas possam ser usadas para criptografar seus dados.

É possível revogar o acesso à concessão, ou remover o acesso do serviço à chave gerenciada pelo cliente a qualquer momento. Se você fizer isso, o Amazon Location não poderá acessar nenhum dos dados criptografados com a chave gerenciada pelo cliente, o que afetará as operações que dependerem desses dados. Por exemplo, se você tentar obter as posições de dispositivos a partir de um rastreador criptografado que o Amazon Location não pode acessar, a operação retornará um erro AccessDeniedException.

Criar uma chave gerenciada pelo cliente

Você pode criar uma chave simétrica gerenciada pelo cliente usando o AWS Management Console, ou as AWS KMS APIs.

Para criar uma chave simétrica gerenciada pelo cliente

Siga as etapas de Criar uma chave simétrica gerenciada pelo cliente no Guia do desenvolvedor do AWS Key Management Service .

Política de chave

As políticas de chaves controlam o acesso à chave gerenciada pelo seu cliente. Cada chave gerenciada pelo cliente deve ter exatamente uma política de chaves, que contém declarações que determinam quem pode usar a chave e como pode usá-la. Ao criar a chave gerenciada pelo cliente, você pode especificar uma política de chaves. Para obter mais informações, consulte Managing access to customer managed keys (Administrando o acesso a chaves gerenciadas pelo cliente) no Guia do desenvolvedor do AWS Key Management Service .

Para usar a chave gerenciada pelo cliente com os seus recursos do Amazon Location, as seguintes operações da API deverão ser permitidas na política de chave:

  • kms:CreateGrant: Adiciona uma concessão a uma chave gerenciada pelo cliente. Concede acesso de controle a uma chave KMS especificada, que permite o acesso às operações de concessão exigidas pelo Amazon Location. Para obter mais informações sobre Utilizar concessões, consulte o Guia do desenvolvedor do AWS Key Management Service .

    Com isso, o Amazon Location pode:

    • Ligar para GenerateDataKeyWithoutPlainText para gerar uma chave de dados criptografada e armazená-la, porque a chave de dados não é usada imediatamente para criptografar.

    • Ligar para Decrypt para usar a chave de dados criptografada armazenada para acessar os dados criptografados.

    • Definir uma entidade principal de retirada para permitir o serviço a RetireGrant.

  • kms:DescribeKey: Fornecer os principais detalhes gerenciados pelo cliente para permitir que o Amazon Location valide a chave.

A seguir estão exemplos de declarações de política que você pode adicionar ao 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 obter mais informações sobre specifying permissions in a policy (especificações de permissões em uma política), consulte o Guia do desenvolvedor do AWS Key Management Service .

Para obter mais informações sobre solução de problemas de acesso à chave, consulte o Guia do Desenvolvedor do AWS Key Management Service .

Especificação de uma chave gerenciada pelo cliente para o Amazon Location

Você pode especificar uma chave gerenciada pelo cliente para fornecer uma segunda camada de criptografia para os seguintes recursos:

Ao criar um recurso, você pode especificar a chave de dados inserindo uma ID KMS, que o Amazon Location usa para criptografar os dados pessoais identificáveis armazenados pelo recurso.

  • ID KMS — Um identificador de chave para uma chave gerenciada pelo AWS KMS cliente. Insira uma ID de chave, um ARN de chave, um nome de alias ou um ARN de alias.

Contexto de criptografia do Amazon Location Service

Um contexto de criptografia é um conjunto opcional de pares chave-valor que pode conter informações contextuais adicionais sobre os dados.

AWS KMS usa o contexto de criptografia como dados autenticados adicionais para oferecer suporte à criptografia autenticada. Quando você inclui um contexto de criptografia em uma solicitação para criptografar dados, AWS KMS vincula o contexto de criptografia aos dados criptografados. Para descriptografar os dados, você deve incluir o mesmo contexto de criptografia na solicitação.

Contexto de criptografia do Amazon Location Service

O Amazon Location usa o mesmo contexto de criptografia em todas as operações AWS KMS criptográficas, onde a chave está aws:geo:arn e o valor é o recurso Amazon Resource Name (ARN).

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

Uso do contexto de criptografia para monitoramento

Ao usar uma chave simétrica gerenciada pelo cliente para criptografar seu tracker (rastreador) ou sua geofence collection (coleção de geocercas), você também pode usar o contexto de criptografia nos registros e logs de auditoria para identificar como a chave gerenciada pelo cliente está sendo usada. O contexto de criptografia também aparece nos registros gerados pelo AWS CloudTrail ou Amazon CloudWatch Logs.

Uso do contexto de criptografia para controlar o acesso à chave gerenciada pelo cliente

Você pode usar o contexto de criptografia nas políticas de chaves e políticas do IAM como conditions e controlar o acesso à sua chave simétrica gerenciada pelo cliente. Você também pode usar restrições no contexto de criptografia em uma concessão.

O Amazon Location utiliza uma restrição ao contexto de criptografia em concessões para controlar o acesso à chave gerenciada pelo cliente na sua conta ou região. A restrição da concessão exige que as operações permitidas pela concessão usem o contexto de criptografia especificado.

Veja a seguir exemplos de declarações de políticas de chave para conceder acesso a uma chave gerenciada pelo cliente para um contexto de criptografia específico. A condição nesta declaração de política exige que as concessões tenham uma restrição no contexto de criptografia que especifique o contexto da criptografia.

{ "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" } } }

Monitoramento das suas chaves de criptografia para o Amazon Location Service

Ao usar uma chave gerenciada pelo AWS KMS cliente com seus recursos do Amazon Location Service, você pode usar AWS CloudTrailo Amazon CloudWatch Logs para rastrear solicitações enviadas para a Amazon Location AWS KMS.

Os exemplos a seguir são AWS CloudTrail eventos paraCreateGrant, GenerateDataKeyWithoutPlainTextDecrypt, e DescribeKey para monitorar operações KMS chamadas pela Amazon Location para acessar dados criptografados pela chave gerenciada pelo cliente:

CreateGrant

Quando você usa uma chave gerenciada pelo AWS KMS cliente para criptografar seus recursos de rastreamento ou coleta geográfica, a Amazon Location envia uma CreateGrant solicitação em seu nome para acessar a chave KMS em sua conta. AWS A concessão que o Amazon Location cria é específica para o recurso associado à chave gerenciada pelo cliente AWS KMS . Além disso, o Amazon Location usa a operação RetireGrant para remover uma concessão quando você exclui um recurso.

O evento de exemplo a seguir registra a operação 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

Quando você ativa uma chave gerenciada pelo AWS KMS cliente para seu rastreador ou recurso de coleta de cerca geográfica, a Amazon Location cria uma chave de tabela exclusiva. Ele envia uma GenerateDataKeyWithoutPlainText solicitação AWS KMS que especifica a chave gerenciada pelo AWS KMS cliente para o recurso.

O evento de exemplo a seguir registra a operação 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

Quando você acessa um rastreador ou uma coleção de geocercas criptografados, o Amazon Location chama a operação Decrypt para usar a chave de dados criptografada e armazenada para acessar os dados criptografados.

O evento de exemplo a seguir registra a operação 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

O Amazon Location usa a operação DescribeKey para verificar se a chave gerenciada pelo cliente AWS KMS associada ao seu rastreador ou à coleção de geocercas existe na conta e na região.

O evento de exemplo a seguir registra a operação 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" }

Saiba mais

Os recursos a seguir fornecem mais informações sobre a criptografia de dados em pausa.