Proteção e criptografia de dados no S3 Vectors
nota
O Amazon S3 Vectors está na versão prévia para o Amazon Simple Storage Service e está sujeito a alterações.
O Amazon S3 Vectors oferece 99,999999999% (onze noves) de durabilidade para dados vetoriais, o que garante uma confiabilidade excepcional para suas necessidades de armazenamento de vetores. Essa durabilidade é respaldada pela infraestrutura comprovada do Amazon S3, projetada para manter a integridade e a disponibilidade dos dados mesmo em caso de falhas de hardware ou outras interrupções.
A proteção de dados no S3 Vectors inclui várias camadas de controles de segurança projetados para proteger dados vetoriais em repouso e em trânsito.
Por padrão, todos os novos vetores nos buckets de vetores do Amazon S3 Vectors usam criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3). Quando você cria um bucket de vetores com a criptografia SSE-S3, todas as operações subsequentes no bucket usam criptografia automaticamente.
O S3 Vectors também se integra ao AWS Key Management Service (KMS) para oferecer opções flexíveis de gerenciamento de chaves de criptografia, permitindo que você escolha chaves gerenciadas pelo cliente para controle de permissões e auditabilidade.
Definir o comportamento da criptografia do lado do servidor para buckets de vetores do Amazon S3
A configuração de criptografia no S3 Vectors é uma configuração de segurança fundamental que se deve especificar ao criar um bucket de vetores. Esse design garante que todos os dados vetoriais armazenados no bucket sejam criptografados desde o momento da criação. A configuração de criptografia se aplica a todos os vetores, índices de vetores e metadados dentro do bucket, fornecendo proteção consistente em todo o conjunto de dados vetoriais em um bucket de vetores.
Importante
Não é possível alterar as configurações de criptografia de um bucket de vetores depois que ele é criado. Você deve considerar cuidadosamente seus requisitos de criptografia durante o processo de criação do bucket, como requisitos de conformidade, preferências de gerenciamento de chaves e integração com a infraestrutura de segurança existente.
O tipo de criptografia SSE-S3 ou SSE-KMS é definido no nível do bucket de vetores e se aplica a todos os índices de vetores e vetores dentro do bucket. Não é possível mudar para configurações de criptografia diferentes para índices individuais dentro de um bucket. A configuração de criptografia se aplica não apenas aos dados vetoriais em si, mas também a todos os metadados associados.
Usar a criptografia SSE-S3
A criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3) oferece uma solução de criptografia simples e eficaz para buckets de vetores, em que a AWS gerencia todos os aspectos do processo de criptografia. Esse método de criptografia usa a criptografia AES-256
e foi projetado para oferecer segurança consistente com o mínimo de custos operacionais indiretos, o que possibilita que as organizações usem uma criptografia robusta sem a complexidade de precisar gerenciar chaves de criptografia.
Com o SSE-S3, o Amazon S3 gerencia automaticamente a geração, a alternância e o gerenciamento de chaves de criptografia. O SSE-S3 oferece segurança robusta sem configuração adicional ou requisitos contínuos de gerenciamento. Os processos de criptografia e descriptografia são gerenciados automaticamente pelo serviço e não há cobranças adicionais pelo uso da criptografia SSE-S3 além do preço padrão do S3 Vectors.
Usar a criptografia SSE-KMS
A criptografia do lado do servidor com chaves do AWS Key Management Service (SSE-KMS) oferece controle aprimorado sobre chaves de criptografia e permite um registro em log de auditoria detalhado do uso das chaves. Esse método de criptografia é ideal para organizações com requisitos rígidos de conformidade, aquelas que precisam implementar políticas personalizadas de alternância de chaves ou ambientes em que são necessárias trilhas de auditoria detalhadas do acesso aos dados.
O SSE-KMS permite que você use chaves gerenciadas pelo cliente (CMKs) para criptografar dados vetoriais. As chaves gerenciadas pelo cliente oferecem o mais alto nível de controle, permitindo que você defina políticas de chave, habilite ou desabilite chaves e monitore o respectivo uso por meio do AWS CloudTrail. Esse nível de controle torna o SSE-KMS particularmente adequado para setores regulamentados ou organizações com requisitos específicos de governança de dados.
Ao usar o SSE-KMS com chaves gerenciadas pelo cliente, você tem controle total sobre quem pode usar as chaves para criptografar e descriptografar dados. Você pode criar políticas de chave detalhadas que especificam quais usuários, perfis ou serviços podem acessar as chaves.
Considerações importantes sobre SSE-KMS
-
Requisitos de formato de chave do KMS: o S3 Vectors exige que você especifique chaves do KMS usando o formato completo do nome do recurso da Amazon (ARN). Não é possível usar IDs ou aliases de chave.
-
Permissões à entidade principal de serviço: ao usar chaves gerenciadas pelo cliente com o S3 Vectors, você deve conceder permissões explicitamente à entidade principal de serviço do S3 Vectors para usar sua chave do KMS. Esse requisito garante que o serviço possa criptografar e descriptografar seus dados em seu nome. A entidade principal de serviço que requer acesso é
indexing.s3vectors.amazonaws.com
.
Exemplo: política de chave do KMS para o S3 Vectors
Para usar uma chave do KMS gerenciada pelo cliente com o S3 Vectors, você deve atualizar sua política de chave para incluir permissões à entidade principal de serviço do S3 Vectors. Veja abaixo um exemplo abrangente de política de chave.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowS3VectorsServicePrincipal", "Effect": "Allow", "Principal": { "Service": "indexing.s3vectors.amazonaws.com" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:s3vectors:
:
aws-region
123456789012
:bucket/*" }, "StringEquals": { "aws:SourceAccount": "123456789012
" }, "ForAnyValue:StringEquals": { "kms:EncryptionContextKeys": ["aws:s3vectors:arn", "aws:s3vectors:resource-id"] } } }, { "Sid": "AllowApplicationAccess", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam:123456789012
:role/VectorApplicationRole", "arn:aws:iam:123456789012
:user/DataScientist" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "s3vectors..amazonaws.com" }, "ForAnyValue:StringEquals": { "kms:EncryptionContextKeys": ["aws:s3vectors:arn", "aws:s3vectors:resource-id"] } } } ] }
aws-region
-
Permissões obrigatórias do KMS:
-
Permissão à entidade principal de serviço do S3 Vectors:
-
kms:Decrypt
: exigida pela entidade principal de serviço do S3 Vectors (indexing.s3vectors.amazonaws.com
) em sua chave gerenciada pelo cliente para manter e otimizar o índice em operações em segundo plano.
-
-
Permissões à entidade principal do IAM:
-
kms:Decrypt
: obrigatória para todas as operações em nível de vetor (PutVectors, GetVectors, QueryVectors, DeleteVectors e ListVectors). -
kms:GenerateDataKey
: obrigatória para criar um bucket de vetores usando a chave gerenciada pelo cliente.
-
-
-
Considerações sobre o acesso entre contas: ao implementar padrões de acesso entre contas com o SSE-KMS, você deve garantir que a política de chave do KMS permita o acesso das entidades principais apropriadas em outras contas. O formato do ARN da chave se torna particularmente importante em cenários entre contas, pois oferece uma referência inequívoca à chave, independentemente do contexto da conta por meio da qual ela está sendo acessada.