Si subo un archivo a S3 con el nombre de archivo idéntico a un nombre de archivo de un objeto en el depósito, lo sobreescribe. ¿Qué opciones existen para evitar sobrescribir archivos con nombres de archivo idénticos? He habilitado el control de versiones en mi cubo, pensando que resolverá el problema, pero los objetos aún se sobrescriben.Amazon S3 evita sobrescribir objetos con el mismo nombre
Respuesta
Mi comentario anterior no funciona. Pensé que la ACL WRITE
se aplicaría a los objetos también, pero solo funciona en cubos.
Dado que habilitó el control de versiones, sus objetos no se sobrescriben. Pero si no especifica la versión en su solicitud GET o URL, se tomará la última versión. Esto significa que cuando pones y objetas en S3 necesitas guardar el ID de versión que te dice la respuesta para recuperar el primer objeto.
Ver Amazon S3 ACL for read-only and write-once access para más.
¡Gracias! Probaré eso. – CyberJunkie
También puede configurar un usuario de IAM con permisos limitados. Las escrituras aún se escriben (es decir, las actualizaciones), pero usar un usuario de IAM es una buena práctica de todos modos.
El propietario (es decir, su "clave de acceso y clave secreta a largo plazo") siempre tiene control total a menos que se desvie de todo para deshabilitarlo.
Gracias, no lo he pensado. Un usuario que no puede actualizar/sobrescribir sería ideal si puedo configurarlo en AWS. – CyberJunkie
Tendrá que volver a verificar la documentación. No sé si S3 comprende la diferencia entre _write_ y _update_. Sé que de forma predeterminada (es decir, permisos completos), las escrituras y las actualizaciones se tratan como lo mismo. –
Aquí está mi sugerencia si está utilizando un DB para almacenar la clave de cada archivo en su cubo s3.
Generar una clave aleatoria. Intente insertar/actualizar la clave de su base de datos, en un campo con una restricción ÚNICA que permite una entrada nula. Si falla la clave se ha utilizado, repita hasta que obtenga una clave única.
Luego ponga su archivo en s3 con su llave que sepa que es única.
- 1. Amazon cambio de nombre S3 y sobrescribir los archivos, recomendaciones y riesgos
- 2. Cómo enumerar _todos_ objetos en el cubo de Amazon S3?
- 3. Amazon S3 SDK: ¿Cambiar el nombre del archivo al descargar?
- 4. Amazon S3 y Checksum
- 5. Concurrencia en Amazon S3
- 6. Sin conexión Amazon S3
- 7. Uso de Amazon S3 junto con Amazon RDS
- 8. Permisos de Amazon S3
- 9. zcat en amazon s3
- 10. git y Amazon s3
- 11. Arquitectura de Amazon S3
- 12. SignatureDoesNotMatch - Amazon S3 API
- 13. Nombre de cambio de archivo de cambio de Amazon S3
- 14. tema TCP extraño con Amazon S3
- 15. Amazon S3 CORS PUT falla
- 16. Force-Download con php en Amazon S3
- 17. django-storage con Amazon S3 - evite la sobreescritura
- 18. Archivo PHP cargar y sobrescribir el archivo con el mismo nombre
- 19. Encabezados personalizados en Amazon S3
- 20. Amazon S3 creando claves únicas para cada objeto
- 21. Duplicity, Amazon S3 excepción backend
- 22. Iniciar sesión en Amazon S3
- 23. Archivo duplicado en Amazon S3
- 24. Amazon S3 - x-amz-meta
- 25. parámetros con el mismo nombre
- 26. Solicitud de muestra - Amazon S3/Indy/Delphi
- 27. Amazon S3 Hosting Streaming Video
- 28. ¿Es apropiado Amazon S3 para publicar videos?
- 29. ¿Admite Amazon S3 la solicitud HTTP con autenticación básica?
- 30. Biblioteca PHP para Amazon S3 con respaldo local
No estoy seguro, pero ¿no puede establecer la ACL como de solo lectura para este objeto? Quiero decir, por cada objeto que cargas. – Prinzhorn
Estoy configurando ACL en público porque los archivos pueden ser vistos por cualquier persona. – CyberJunkie