Configurar a criptografia para o S3 com o KMS
Esta página aborda como configurar a criptografia no lado do servidor com um KMS key para ler arquivos em caminhos s3a:// usando Unity Catalog. Ele é fornecido para usuários que precisam de acesso cruzadocloud a tabelas e volumes externos em buckets criptografados S3.
Configurar a criptografia para o S3 usando o Unity Catalog
A AWS oferece suporte a políticas de bucket S3 que exigem que os cabeçalhos de criptografia sejam definidos pelo cliente. Se o seu bucket S3 exigir cabeçalhos de criptografia nas solicitações, será preciso configurar um algoritmo de criptografia no local externo no Unity Catalog. Esta configuração configura o cabeçalho correto ao acessar os dados no seu bucket S3. A criptografia SSE não tem suporte com tabelas externas compartilhadas usando OpenSharing.
Etapa 1: Atualize sua política KMS key em AWS
Para proteger os dados em S3, AWS suporta criptografia do lado do servidor (SSE) com Amazon S3 chave gerenciar (SSE-S3) ou AWS KMS chave (SSE-KMS). Se o senhor usar um AWS S3 gerenciar key, pule para a etapa 2.
-
No AWS, acesse o serviço KMS.
-
Clique no endereço key ao qual o senhor deseja adicionar permissão.
-
Na seção key Policy , selecione Switch to policy view .
-
Edite a seção da política key que permite que o S3 use o key, por exemplo:
JSON{"Sid": "Allow access through S3 for all principals in the account that are authorized to use S3","Effect": "Allow","Principal": {"AWS": "*"},"Action": ["kms:Encrypt","kms:Decrypt","kms:ReEncrypt*","kms:GenerateDataKey*","kms:DescribeKey"],"Resource": "*","Condition": {"StringEquals": {"kms:CallerAccount": "<AWS ACCOUNT ID>","kms:ViaService": "s3.<REGION>.amazonaws.com"}}}, -
Clique em Salvar alterações .
Etapa 2: Configurar o acesso ao S3 usando o Unity Catalog
-
Crie uma credencial de armazenamento para se conectar ao S3, usando as instruções em Criar uma credencial de armazenamento que acesse o GCS.
Certifique-se de criar a política IAM no mesmo account que o bucket S3. Se você estiver usando o SSE-KMS, inclua o seguinte na política:
JSON{"Action": ["kms:Decrypt","kms:Encrypt","kms:GenerateDataKey*"],"Resource": ["arn:aws:kms:<KMS-KEY>"],"Effect": "Allow"},Consulte a Etapa 1: Criar um IAM role.
-
Crie um local externo para se conectar ao S3 usando o Catalog Explorer ou o SQL.
-
Configure a criptografia no lado do servidor em seu local externo, usando as instruções em Configurar um algoritmo de criptografia em um local externo (somente AWS S3).