storages s3boto3storage django amazon-s3 boto

s3boto3storage - django storages s3



Firma/Caducidad/Clave de acceso que aparece en los parĂ¡metros de URL. Django/Boto/S3 (4)

Las URLs en miniatura tienen parámetros en ellas. No estoy seguro de por qué. Creo que están relacionados con el almacenamiento en miniatura o boto que estamos usando. ¿Cómo elimino los parámetros adicionales de la URL? ¿Vienen de boto / s3 o sorl? No tengo idea de cómo depurar.


Es un comportamiento extraño: la vista previa de Google Docs funcionará y mostrará una vista previa sin los parámetros, pero dirá que no hay vista previa disponible si boto agrega la firma.

<iframe src="{% trans "https://docs.google.com/viewer?embedded=true&amp;url=" %}{{ document.file.url }}" width="451" height="390" style="border: none;"></iframe>

Debo estar perdiendo algo.


Funciona para mí: AWS_QUERYSTRING_AUTH = False

utilizando este https://github.com/mstarinteractive/django-s3storage

from myapp.s3storage import S3BotoStorage from django.contrib.staticfiles.storage import CachedFilesMixin class CachedStaticS3BotoStorage(CachedFilesMixin, S3BotoStorage): """Extends S3BotoStorage to save static files with hashed filenames.""" pass StaticRootS3BotoStorage = lambda: CachedStaticS3BotoStorage(location=''static'')


Los parámetros adicionales que se están agregando están allí para implementar la autenticación de cadena de consulta . Esto le permite firmar previamente la URL a los recursos privados almacenados en S3. Mientras alguien tenga la URL previamente firmada (y no haya caducado), podrá acceder a estos recursos aunque no se puedan leer públicamente.

Sin los parámetros adicionales, no hay manera de proporcionar acceso público a estos recursos privados de S3.


Uso: AWS_QUERYSTRING_AUTH = False