Gerenciamento de identidade e acesso no S3 Vectors - Amazon Simple Storage Service

Gerenciamento de identidade e acesso 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 gerenciamento de acesso no S3 Vectors segue as práticas recomendadas de segurança da AWS, oferecendo várias camadas de controle para garantir que somente aplicações e usuários autorizados acessem seus dados vetoriais. O serviço se integra ao IAM e permite políticas baseadas em identidade e em recursos, o que oferece com relação à forma como você estrutura e gerencia permissões em toda a organização.

Autenticar e autorizar solicitações

O S3 Vectors usa mecanismos de autenticação e autorização padrão da AWS para proteger o acesso aos buckets de vetores e ao respectivo conteúdo. Cada solicitação ao S3 Vectors deve ser autenticada usando credenciais válidas da AWS, e o serviço avalia as permissões com base na combinação de políticas baseadas em identidade, políticas baseadas em recursos e quaisquer políticas de controle de serviços aplicáveis.

O processo de autenticação começa quando um cliente faz uma solicitação ao S3 Vectors usando credenciais da AWS (chaves de acesso, credenciais temporárias do AWS STS ou perfis do IAM). O serviço valida essas credenciais e, em seguida, avalia as permissões associadas à identidade autenticada em relação à ação solicitada e ao recurso de destino. Esse processo de avaliação considera vários tipos de política e aplica o princípio de privilégio mínimo para determinar se a solicitação deve ser permitida ou negada.

No S3 Vectors, a autorização opera em vários níveis de granularidade. Você pode controlar o acesso em um bucket de vetores, em um índice de vetores individual ou até mesmo em operações específicas dentro de um índice. Esse modelo de permissão hierárquica permite que você implemente esquemas sofisticados de controle de acesso que se alinhem à sua estrutura organizacional e aos seus requisitos de governança de dados.

Tipos de recurso definidos para buckets de vetores

O S3 Vectors define tipos de recurso específicos que podem ser referidos nas políticas do IAM e nas políticas baseadas em recursos. É essencial compreender esses tipos de recurso para criar políticas de controle de acesso eficazes e que forneçam o nível certo de acesso aos usuários e aplicações certos.

A tabela a seguir descreve os tipos de recurso que estão disponíveis no S3 Vectors.

Tipos de recurso disponíveis no S3 Vectors
Tipo de recurso Formato ARN Descrição
VectorBucket arn:aws:s3vectors:region:123456789012:bucket/bucket-name Representa um bucket de vetores e é usado para operações em nível de bucket, como criar, excluir ou configurar o bucket.
Índice arn:aws:s3vectors:region:123456789012:bucket/bucket-name/index/index-name Representa um índice de vetores em um bucket e é usado para operações específicas do índice, como consultar vetores ou gerenciar o conteúdo do índice.

Ações de política para buckets de vetores

O S3 Vectors oferece um conjunto abrangente de ações de política que correspondem às várias operações que você pode realizar em buckets e índices de vetores. Essas ações são projetadas para fornecer um controle refinado sobre quem pode realizar operações específicas, permitindo que você implemente o princípio de privilégio mínimo de forma eficaz.

A tabela a seguir lista todas as ações de política disponíveis para os recursos do S3 Vectors.

Ações de política para recursos do S3 Vectors
Tipo de recurso Operações de API Ações de políticas Descrição das ações de política Nível de acesso Chaves de condição
Conta ListVectorBuckets s3vectors:ListVectorBuckets Concede permissão para listar todos os buckets de vetores na conta e na região. Lista
VectorBucket CreateVectorBucket s3vectors:CreateVectorBucket Concede permissão para criar um bucket de vetores com a configuração especificada. Gravar s3vectors:sseType, s3vectors:kmsKeyArn
VectorBucket GetVectorBucket s3vectors:GetVectorBucket Concede permissão para recuperar os atributos e a configuração do bucket de vetores. Leitura
VectorBucket DeleteVectorBucket s3vectors:DeleteVectorBucket Concede permissão para excluir um bucket de vetores vazio. Gravar
VectorBucket ListIndexes s3vectors:ListIndexes Concede permissão para listar todos os índices em um bucket de vetores. Lista
VectorBucket PutVectorBucketPolicy s3vectors:PutVectorBucketPolicy Concede permissão para aplicar ou atualizar uma política baseada em recursos em um bucket de vetores. Gerenciamento de permissões
VectorBucket GetVectorBucketPolicy s3vectors:GetVectorBucketPolicy Concede permissão para recuperar uma política baseada em recursos anexada a um bucket de vetores. Leitura
VectorBucket DeleteVectorBucketPolicy s3vectors:DeleteVectorBucketPolicy Concede permissão para remover a política baseada em recursos de um bucket de vetores. Gerenciamento de permissões
Índice CreateIndex s3vectors:CreateIndex Concede permissão para criar um índice de vetores com dimensões e configuração de metadados especificadas. Gravar
Índice GetIndex s3vectors:GetIndex Concede permissão para recuperar os atributos e a configuração do índice de vetores Leitura
Índice DeleteIndex s3vectors:DeleteIndex Concede permissão para excluir um índice de vetores e todo o respectivo conteúdo. Gravar
Índice QueryVectors (Obrigatório) s3vectors:QueryVectors

Concede permissão para realizar consultas de similaridade em relação a vetores em um índice.

Com s3vectors:QueryVectors apenas, você pode recuperar chaves vetoriais de vizinhos mais próximos e as respectivas distâncias calculadas em relação ao vetor de consulta. Essa permissão é suficiente somente quando você não define nenhum filtro de metadados e não solicita dados vetoriais ou metadados (mantendo o parâmetro returnMetadata definido como falso ou não especificado).

Leitura
(Obrigatório em determinadas condições): s3vectors:GetVectors

Obrigatório se você definir filtros de metadados. Nesse caso, defina returnMetadata como verdadeiro em sua solicitação.

Com s3vectors:QueryVectors e s3vectors:GetVectors, você pode filtrar os resultados usando critérios de metadados e recuperar chaves vetoriais e os respectivos dados associados, metadados e distâncias calculadas em relação ao vetor de consulta.

Leitura
Índice PutVectors s3vectors:PutVectors Concede permissão para adicionar ou atualizar vetores em um índice. Gravar
Índice GetVectors s3vectors:GetVectors Concede permissão para recuperar vetores específicos e os respectivos metadados por chave vetorial. Leitura
Índice ListVectors (Required) s3vectors:ListVectors

Concede permissão para listar chaves vetoriais em um índice.

Com s3vectors:ListVectors apenas, você pode listar chaves vetoriais quando os parâmetros returnData e returnMetadata são falsos ou não estão especificados.

Leitura
(Obrigatório em determinadas condições): s3vectors:GetVectors

Obrigatório se você definir um dos parâmetros returnData ou returnMetadata como verdadeiro em sua solicitação.

Com s3vectors:ListVectors e s3vectors:GetVectors, você pode recuperar chaves vetoriais os respectivos dados e metadados associados definindo returnData e returnMetadata como verdadeiro.

Leitura
Índice DeleteVectors s3vectors:DeleteVectors Concede permissão para excluir vetores específicos de um índice. Gravar

Essas ações podem ser combinadas de várias maneiras para criar políticas que atendam aos seus requisitos específicos de acesso. Por exemplo, você pode criar uma política somente para leitura que inclua as ações s3vectors:GetVectorBucket, s3vectors:ListIndexes, s3vectors:QueryVectors e s3vectors:GetVectors ou uma política que inclua permissões de consulta e recuperação vetorial, mas exclua ações administrativas, como criar ou excluir índices.

Chaves de condição para buckets de vetores

Chaves de condição para buckets de vetores
Chaves de condição Descrição Tipo
1 s3vectors:sseType Filtra o acesso pelo tipo de criptografia do lado do servidor. Valores válidos: AES256 | aws:kms. String
2 s3vectors:kmsKeyArn Filtra o acesso pelo ARN da chave do AWS AWS KMS usada para criptografar um bucket de vetores. ARN