¿Por qué S3 (usar con boto y django-storages) proporciona url firmado incluso para archivos públicos?

Esto es extraño. Tengo una mezcla de archivos públicos y privados. Quiero direcciones URL normales en archivos públicos, y direcciones URL firmadas en archivos privados.

Intenté cambiar AWS_QUERYSTRING_AUTH to False como veo por defecto, es True en django-storages.

Pero, cuando lo cambio, mi URL de archivos privados no está firmada (por lo tanto, no es accesible).

Puede ser que me esté perdiendo algo aquí. ¿Qué puede ser solución?

Gracias por adelantado.

    AWS_QUERYSTRING_AUTH establece el comportamiento predeterminado, pero puede anularlo al crear una instancia de S3BotoStorage , pasando un argumento adicional al inicializador:

     S3BotoStorage(bucket="foo", querystring_auth=False) 

    Por lo tanto, si tiene un grupo privado y otro público, puede establecer el argumento de querystring_auth adecuada y obtener el comportamiento deseado.

    pon esto en tu settings.py

     AWS_QUERYSTRING_AUTH = False 

    Otra forma de solucionar esto es establecer AWS_S3_CUSTOM_DOMAIN en su configuración. @see: https://github.com/jschneier/django-storages/blob/master/storages/backends/s3boto.py#L478

    (probado con boto == 2.38.0 y django-storages-redux == 1.3)