Como trabalhar com buckets do Amazon S3 criptografados no lado do servidor - FSxpara Lustre

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

Como trabalhar com buckets do Amazon S3 criptografados no lado do servidor

FSxfor Lustre oferece suporte a buckets Amazon S3 que usam criptografia do lado do servidor com chaves gerenciadas pelo S3 (-S3) e armazenadas em SSE (-). AWS KMS keys AWS Key Management Service SSE KMS

Se você quiser que FSx a Amazon criptografe dados ao gravar em seu bucket S3, você precisa definir a criptografia padrão em seu bucket S3 como SSE -S3 ou -. SSE KMS Para obter mais informações, consulte Configuração da criptografia padrão no Guia do usuário do Amazon S3. Ao gravar arquivos no seu bucket do S3, a Amazon FSx segue a política de criptografia padrão do seu bucket do S3.

Por padrão, a Amazon FSx oferece suporte a buckets S3 criptografados usando SSE -S3. Se você quiser vincular seu sistema de FSx arquivos da Amazon a um bucket do S3 criptografado usando a KMS criptografia SSE -, você precisa adicionar uma declaração à sua política de chaves gerenciadas pelo cliente que permita FSx à Amazon criptografar e descriptografar objetos em seu bucket do S3 usando sua chave. KMS

A declaração a seguir permite que um sistema de FSx arquivos específico da Amazon criptografe e descriptografe objetos para um bucket S3 específico, bucket_name.

{ "Sid": "Allow access through S3 for the FSx SLR to use the KMS key on the objects in the given S3 bucket", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::aws_account_id:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/AWSServiceRoleForFSxS3Access_fsx_file_system_id" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "aws_account_id", "kms:ViaService": "s3.bucket-region.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name/*" } } }
nota

Se você estiver usando um KMS with CMK a para criptografar seu bucket do S3 com as chaves do bucket do S3 ativadas, EncryptionContext defina o como o bucketARN, não o objetoARN, como neste exemplo:

"StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name" }

A declaração de política a seguir permite que todos os sistemas de FSx arquivos da Amazon em sua conta sejam vinculados a um bucket específico do S3.

{ "Sid": "Allow access through S3 for the FSx SLR to use the KMS key on the objects in the given S3 bucket", "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.bucket-region.amazonaws.com" }, "StringLike": { "aws:userid": "*:FSx", "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name/*" } } }

Acessando buckets do Amazon S3 criptografados do lado do servidor de uma forma diferente ou compartilhada Conta da AWS VPC

Depois de criar um sistema de arquivos FSx for Lustre vinculado a um bucket criptografado do Amazon S3, você deve então conceder à função vinculada AWSServiceRoleForFSxS3Access_fs-01234567890 ao serviço SLR () acesso à chave usada para criptografar KMS o bucket do S3 antes de ler ou gravar dados do bucket do S3 vinculado. Você pode usar uma IAM função que já tenha permissões para a KMS chave.

nota

Essa IAM função deve estar na conta na qual o sistema de arquivos FSx for Lustre foi criado (que é a mesma conta do S3SLR), não na conta à qual o bucket KMS Key/S3 pertence.

Você usa a IAM função para chamar o seguinte AWS KMS API para criar uma concessão para o S3 para que eles SLR obtenham permissão SLR para os objetos do S3. Para encontrar o ARN associado ao seuSLR, pesquise suas IAM funções usando o ID do sistema de arquivos como a string de pesquisa.

$ aws kms create-grant --region fs_account_region \ --key-id arn:aws:kms:s3_bucket_account_region:s3_bucket_account:key/key_id \ --grantee-principal arn:aws:iam::fs_account_id:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/AWSServiceRoleForFSxS3Access_file-system-id \ --operations "Decrypt" "Encrypt" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "CreateGrant" "DescribeKey" "ReEncryptFrom" "ReEncryptTo"

Para obter mais informações sobre funções vinculadas ao serviço, consulte Como usar perfis vinculados a serviço no Amazon FSx.