2012-03-04 11 views

Respuesta

5

Puede configurar el ACL en el directorio y en los archivos individuales de forma independiente, no otorgue permisos de lectura en el directorio pero permita los archivos individuales. Hay muchas herramientas para ayudar con esto, incluyendo bucket explorer o s3 fox.

+0

gracias. Me di cuenta de que mi herramienta DragDisk también puede hacer esto. – MotoTribe

+0

Esta debería ser la respuesta aceptada, gracias. – user2677034

44

Cabe señalar que agregar un archivo index.html a un depósito no hace absolutamente nada. Este archivo simplemente aparecerá en la lista con todos los demás archivos cuando navegue por la raíz del depósito.

Además, establecer los niveles de acceso en el depósito para que "todos" no puedan leer significa que cada archivo nuevo que cargue en su depósito deberá tener su permiso establecido en "todos" antes de poder examinarse. Esto no es práctico si agrega archivos regularmente.

La mejor solución es establecer primero los niveles de acceso en el depósito para denegar el acceso de lectura a "todos", pero luego cree una política de depósito que permita que todos lean lo que hay dentro del depósito. De esta forma, nadie podrá listar el contenido de su depósito, pero cualquier archivo nuevo que agregue será legible por cualquiera que tenga el enlace a ese archivo.

Esto es lo que podría parecer la política de depósito. Reemplaza 'my_bucket' con tu nombre de cubo y listo.

{ 
    "Version": "2008-10-17", 
    "Statement": [ 
     { 
     "Sid": "AddPerm", 
     "Effect": "Allow", 
     "Principal": "*", 
     "Action": "s3:GetObject", 
     "Resource": "arn:aws:s3:::my_bucket/*" 
     } 
    ] 
} 
+0

** Esta es la respuesta correcta. ** Específicamente, tenga en cuenta la implementación de una política de depósito * en su lugar * del acceso amplio "Todos/Leer". – charneykaye

+0

Muy bien, resolvió mi problema, gracias – radosch

+2

No pude conseguir que esto funcione en 2017 (no estoy seguro de si algo se ha actualizado) pero hay una opción bajo la consola de administración S3 que dice "enumerar objetos", puedes quitar eso pero aún así permitir acceso de lectura para lograr lo mismo –

2

Una política de cubo ya no debe ser necesario para esto, por lo que yo soy consciente (que probablemente fue cuando las respuestas a esta pregunta fueron publicadas primero).

Ahora, simplemente configure su depósito para acceso público pero desactive el permiso "Objetos de lista".

Cuestiones relacionadas