Exemplos de política baseada em recursos do S3 Vectors - Amazon Simple Storage Service

Exemplos de política baseada em recursos do 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.

Políticas baseadas em recurso são anexadas a um recurso. Você pode criar políticas baseadas em recursos para buckets de vetores. As políticas baseadas em recursos para o S3 Vectors usam o formato de política padrão da AWS em JSON, que você anexa diretamente aos buckets de vetores para controlar o acesso ao bucket e ao respectivo conteúdo.

Diferentemente das políticas baseadas em identidade anexadas a usuários, grupos ou perfis, as políticas baseadas em recursos são anexadas ao próprio recurso (o bucket de vetores) e podem conceder permissões a entidades principais de outras contas da AWS. Isso as torna ideais para cenários em que você precisa compartilhar dados vetoriais além das fronteiras organizacionais ou implementar controles de acesso refinados com base no recurso específico que está sendo acessado.

As políticas baseadas em recursos são avaliadas com as políticas baseadas em identidade, e as permissões efetivas são determinadas pela união de todas as políticas aplicáveis. Isso significa que a entidade principal precisa da permissão da política baseada em identidade (anexada ao usuário/perfil) e da política baseada em recursos (anexada ao bucket) para realizar uma ação, a menos que a política baseada em recursos conceda explicitamente a permissão.

Exemplo 1: política de acesso entre contas

Essa política demonstra como conceder permissões específicas a usuários de contas da AWS diferentes:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CrossAccountBucketAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam:123456789012:role/Admin" }, "Action": [ "s3vectors:CreateIndex", "s3vectors:ListIndexes", "s3vectors:QueryVectors", "s3vectors:PutVectors", "s3vectors:DeleteIndex" ], "Resource": [ "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket/*", "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket" ] } ] }

Exemplo 2: negar ações em nível de índice de vetores

Essa política demonstra como negar ações específicas em nível de índice de vetores a um perfil do IAM:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyIndexLevelActions", "Effect": "Deny", "Principal": { "AWS": "arn:aws:iam:123456789012:role/External-Role-Name" }, "Action": [ "s3vectors:QueryVectors", "s3vectors:PutVectors", "s3vectors:DeleteIndex", "s3vectors:GetVectors", "s3vectors:GetIndex", "s3vectors:DeleteVectors", "s3vectors:CreateIndex", "s3vectors:ListVectors" ], "Resource": "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket/*" } ] }

Exemplo 3: negar operações de modificação em nível de índice de vetores e bucket

Essa política demonstra como negar solicitações de modificação para ações em nível de índice de vetores e de bucket especificando vários recursos:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyModificationActionsAtBucketandIndexLevels", "Effect": "Deny", "Principal": { "AWS": "arn:aws:iam:123456789012:role/External-Role-Name" }, "Action": [ "s3vectors:CreateVectorBucket", "s3vectors:DeleteVectorBucket", "s3vectors:PutVectorBucketPolicy", "s3vectors:DeleteVectorBucketPolicy", "s3vectors:CreateIndex", "s3vectors:DeleteIndex", "s3vectors:PutVectors", "s3vectors:DeleteVectors" ], "Resource": [ "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket/*", "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket" ] } ] }