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&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