Ejemplos de políticas basadas en recursos de S3 Vectors - Amazon Simple Storage Service

Ejemplos de políticas basadas en recursos de S3 Vectors

nota

Amazon S3 Vectors se encuentra en versión preliminar para Amazon Simple Storage Service y está sujeto a cambios.

Las políticas basadas en recursos se asocian a un recurso. Puede crear políticas basadas en recursos para buckets vectoriales. Las políticas basadas en recursos para S3 Vectors utilizan el formato de política de AWS estándar en JSON que se asocia directamente a los buckets vectoriales para controlar el acceso al bucket y al contenido.

A diferencia de las políticas basadas en identidad que se asocian a usuarios, grupos o roles, las políticas basadas en recursos se asocian al propio recurso (el bucket vectorial) y pueden conceder permisos a entidades principales de otras cuentas de AWS. Esto las convierte en ideales para situaciones en las que es necesario compartir datos vectoriales fuera de los límites de la organización o implementar controles de acceso precisos basados en el recurso específico al que se accede.

Las políticas basadas en recursos se evalúan en combinación con políticas basadas en identidad y los permisos efectivos vienen determinados por la unión de todas las políticas aplicables. Esto significa que una entidad principal necesita permiso tanto de la política basada en identidades (asociada al usuario o al rol) como de la política basada en recursos (asociada al bucket) para realizar una acción, a menos que la política basada en recursos conceda explícitamente el permiso.

Ejemplo 1: política de acceso entre cuentas

Esta política demuestra cómo conceder permisos específicos a usuarios de diferentes cuentas de AWS:

{ "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" ] } ] }

Ejemplo 2: denegación de acciones de índice vectorial

Esta política demuestra cómo denegar acciones específicas de índice vectorial a un rol de 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/*" } ] }

Ejemplo 3: denegación de las operaciones de modificación tanto de índice vectorial como de bucket

Esta política demuestra cómo denegar solicitudes de modificación para acciones de índice vectorial y de bucket mediante la especificación de varios 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" ] } ] }