Criptografia de dados em repouso para a Amazon DataZone - Amazon DataZone

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 a Amazon DataZone

A criptografia de dados em repouso por padrão ajuda a reduzir 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.

A Amazon DataZone usa chaves AWS de propriedade padrão para criptografar automaticamente seus dados em repouso. Você não pode visualizar, gerenciar ou auditar o uso de chaves AWS próprias. Para obter mais informações, consulte chaves AWS próprias.

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 AWS criptografia existentes escolhendo uma chave gerenciada pelo cliente ao criar seus domínios da Amazon DataZone . A Amazon DataZone oferece suporte ao uso de chaves simétricas gerenciadas pelo cliente que você pode criar, possuir e gerenciar para adicionar uma segunda camada de criptografia sobre a criptografia existente AWS . Como você tem controle total dessa camada de criptografia, nela você pode realizar as seguintes tarefas:

  • Estabeleça e mantenha as principais políticas

  • Estabelecer e manter IAM políticas e subsídios

  • Ativar e desativar as principais políticas

  • Gire o material criptográfico da chave

  • Adicionar tags

  • Crie aliases de chave

  • Programar chaves para exclusão

Para obter mais informações, consulte Chaves gerenciadas pelo cliente.

nota

A Amazon habilita DataZone automaticamente a criptografia em repouso usando chaves AWS próprias para proteger os dados do cliente sem nenhum custo.

AWS KMScobranças se aplicam ao uso de chaves gerenciadas pelo cliente. Para obter mais informações sobre preços, consulte AWS Key Management Service Pricing.

Como a Amazon DataZone usa subsídios em AWS KMS

A Amazon DataZone exige três concessões para usar sua chave gerenciada pelo cliente. Quando você cria um DataZone domínio da Amazon criptografado com uma chave gerenciada pelo cliente, a Amazon DataZone cria concessões e subconcessões em seu nome enviando CreateGrantsolicitações para AWS KMS. Os subsídios AWS KMS são usados para dar DataZone à Amazon acesso a uma KMS chave em sua conta. DataZone A Amazon cria as seguintes concessões para usar sua chave gerenciada pelo cliente para as seguintes operações internas:

Uma concessão para criptografar seus dados em repouso para as seguintes operações:

  • Envie DescribeKeysolicitações AWS KMS para verificar se o ID simétrico da KMS chave gerenciada pelo cliente inserido ao criar uma coleção de DataZone domínios da Amazon é válido.

  • Envie GenerateDataKeyrequestspara 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.

  • RetireGrantpara retirar a concessão quando o domínio for excluído.

Duas bolsas para pesquisa e descoberta de 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, a Amazon DataZone não poderá acessar nenhum dos dados criptografados pela chave gerenciada pelo cliente, o que afeta as operações que dependem desses dados. Por exemplo, se você tentar obter detalhes de ativos de dados que a Amazon não DataZone pode acessar, a operação retornará um AccessDeniedException erro.

Criar uma chave gerenciada pelo cliente

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

Para criar uma chave simétrica gerenciada pelo cliente, siga as etapas para Criar uma chave simétrica gerenciada pelo cliente no Guia do desenvolvedor do AWS Key Management Service.

Política-chave - as principais políticas controlam o acesso à sua chave gerenciada pelo 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, é possível especificar uma política de chaves. Para obter mais informações, consulte Gerenciando o acesso às chaves gerenciadas pelo cliente no Guia do desenvolvedor do AWS Key Management Service.

Para usar sua chave gerenciada pelo cliente com seus DataZone recursos da Amazon, as seguintes API operações devem ser permitidas na política de chaves:

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

  • kms: DescribeKey — fornece os detalhes da chave gerenciada pelo cliente para permitir que DataZone a Amazon valide a chave.

  • kms: GenerateDataKey — retorna uma chave de dados simétrica exclusiva para uso fora do. AWS KMS

  • kms:Decrypt — decodifica o texto cifrado que foi criptografado por uma chave. KMS

Veja a seguir exemplos de declarações de política que você pode adicionar para a Amazon DataZone:

"Statement" : [ { "Sid" : "Allow access to principals authorized to manage Amazon DataZone", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::<account_id>:root" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource" : "arn:aws:kms:region:<account_id>:key/key_ID", } ]
nota

A negação da KMS política não é aplicada aos recursos acessados por meio do portal de DataZone dados da Amazon.

Para obter mais informações sobre a especificação de permissões em uma política, consulte o Guia do desenvolvedor do AWS Key Management Service.

Para obter mais informações sobre como solucionar problemas de acesso à chave, consulte o Guia do desenvolvedor do AWS Key Management Service.

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

Contexto DataZone de criptografia da Amazon

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

AWS KMSusa 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ê inclui o mesmo contexto de criptografia na solicitação.

A Amazon DataZone usa o seguinte contexto de criptografia:

"encryptionContextSubset": { "aws:datazone:domainId": "{root-domain-uuid}" }

Uso do contexto de criptografia para monitoramento — quando você usa uma chave simétrica gerenciada pelo cliente para criptografar a Amazon DataZone, você também pode usar o contexto de criptografia em registros e registros 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.

Usando o contexto de criptografia para controlar o acesso à sua chave gerenciada pelo cliente - você pode usar o contexto de criptografia nas principais políticas e IAM políticas como condições para 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.

A Amazon DataZone usa uma restrição de contexto de criptografia nas concessões para controlar o acesso à chave gerenciada pelo cliente em 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 de contexto de criptografia que especifique o contexto de criptografia.

{ "Sid": "Enable DescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:DescribeKey", "Resource": "*" },{ "Sid": "Enable Decrypt, GenerateDataKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:datazone:domainId": "{root-domain-uuid}" } } }

Monitorando suas chaves de criptografia para a Amazon DataZone

Ao usar uma chave gerenciada pelo AWS KMS cliente com seus DataZone recursos da Amazon, você pode usá-la AWS CloudTrailpara rastrear solicitações DataZone enviadas pela Amazon AWS KMS. Os exemplos a seguir são AWS CloudTrail eventos paraCreateGrant, GenerateDataKeyDecrypt, e DescribeKey para monitorar KMS operações chamadas pela Amazon DataZone para acessar dados criptografados pela chave gerenciada pelo cliente. Quando você usa uma chave gerenciada pelo AWS KMS cliente para criptografar seu DataZone domínio da Amazon, a Amazon DataZone envia uma CreateGrant solicitação em seu nome para acessar a KMS chave em sua AWS conta. As concessões que a Amazon DataZone cria são específicas para o recurso associado à chave gerenciada pelo AWS KMS cliente. Além disso, a Amazon DataZone usa a RetireGrant operação para remover uma concessão quando você exclui um domínio. 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": "datazone.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": { "constraints": { "encryptionContextSubset": { "aws:datazone:domainId": "SAMPLE-root-domain-uuid" } }, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "operations": [ "Decrypt", "GenerateDataKey", "RetireGrant", "DescribeKey" ], "granteePrincipal": "datazone.us-west-2.amazonaws.com" }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" }, "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" }

Criação de ambientes Data Lake que envolvam catálogos criptografados do AWS Glue

Em casos de uso avançados, ao trabalhar com um catálogo do AWS Glue criptografado, você deve conceder acesso ao DataZone serviço da Amazon para usar sua chave gerenciada pelo clienteKMS. Você pode fazer isso atualizando sua KMS política personalizada e adicionando uma tag à chave. Para conceder acesso ao DataZone serviço da Amazon para trabalhar com dados em um catálogo criptografado do AWS Glue, preencha o seguinte:

  • Adicione a política a seguir à sua KMS chave personalizada. Para obter mais informações, consulte Alterar uma política de chaves.

    { "Sid": "Allow datazone environment roles to use the key", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Decrypt", "kms:Describe*", "kms:Get*" ], "Resource": "*", "Condition": { "StringLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/*datazone_usr*" } } }
  • Adicione a tag a seguir à sua KMS chave personalizada. Para obter mais informações, consulte Usando tags para controlar o acesso às KMS chaves.

    key: AmazonDataZoneEnvironment value: all