Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

423
Vistas
Política de S3 para permitir escribir en un depósito pero no leer de él, ¿es posible?

¿Es posible permitir solo la operación de escritura a un usuario en un depósito sin los permisos de lectura? El objetivo es permitir que todas mis instancias EC2 escriban cada una en un depósito diferente y no permitirles leer ningún otro depósito. Todas mis instancias se ejecutan con el mismo rol de IAM.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Ciertamente es posible. Por ejemplo, suelo usar esta política de solo escritura para la copia de seguridad de la instancia EC2 en S3 cuando uso el comando de sincronización con el interruptor --delete :

 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket-name" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:DeleteObject", "s3:AbortMultipartUpload", "s3:ListMultipartUploadParts", "s3:ListBucketMultipartUploads" ], "Resource": [ "arn:aws:s3:::bucket-name/*" ] } ] }
over 4 years ago · Santiago Trujillo Denunciar

0

Sí. Sin duda, puede asignar al Rol una política que permita PutObject sin ninguna otra operación (por ejemplo, ListBuckets , GetObject ).

Opción 1: permisos de solo escritura en un depósito

 { "Version": "2012-10-17", "Statement": [ { "Sid": "statement1", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::examplebucket/*" ] } ] }

En lugar de darle a cada instancia su propio depósito, puede usar el mismo depósito pero usar su ID de instancia como nombre de directorio (por ejemplo, s3://my-bucket/i-abcd1234/foo.txt ) para evitar conflictos de nombres de archivo.

Opción 2: permisos completos dentro de un subdirectorio

Incluso podría ir un paso más allá y darles acceso completo al depósito de Amazon S3, pero solo dentro de su propio subdirectorio.

El Rol se le asignaría esta política:

 { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSubdirectory", "Effect": "Allow", "Action": [ "s3:*" ], "Resource": [ "arn:aws:s3:::my-bucket/${aws:userid}/*" ] } ] }

En esta situación, la variable de política aws:userid sería igual a role-id:ec2-instance-id . Por lo tanto, la instancia EC2 podría hacer cualquier cosa en el subdirectorio (también conocido como Prefijo de clave) que coincida con su función e ID de instancia.

Por ejemplo:

 aws s3 cp foo s3://my-bucket/AROAJCLCJNQ3333ZQLZTW:i-055f66ea41fb4438e/foo

El role-id se puede obtener a través aws iam get-role --role-name rolename .

Este método garantiza que cada instancia solo pueda usar su propio subdirectorio dentro del depósito. Sin embargo, no podrá enumerar el contenido del depósito porque es un permiso a nivel de depósito.

Consulte también: Otorgar acceso a los recursos de S3 en función del nombre del rol

over 4 years ago · Santiago Trujillo Denunciar

0

Tenga en cuenta que las soluciones anteriores son correctas, pero con PutObject Action también puede sobrescribir objetos existentes ( fuente ). No sé el escenario exacto por el que necesita ese tipo de acceso, pero si desea usarlo para crear una copia de seguridad, agregaría un paso adicional para minimizar el riesgo de sobrescribir objetos. Crearía un proceso separado (Lambda, por ejemplo) para copiar todos los objetos de ese depósito a otro, uno seguro, donde el cliente no tiene acceso en absoluto.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda