带有django-storages

时间:2019-09-18 23:27:49

标签: django amazon-s3 python-django-storages

我已将Django设置为使用django-storages从S3存储桶中提供静态文件。

不幸的是,静态文件的网址如下:

https://[bucket name].s3.amazonaws.com/profile_pics/[filename]?AWSAccessKeyId=[...]&Signature=[...]&Expires=[...]

是否可以对URL进行编码,以避免泄露AWS访问密钥和签名?

2 个答案:

答案 0 :(得分:0)

当您尝试为客户共享S3上的私有资源时,S3就是这样工作的。使用访问密钥ID和签名,您的客户可以使用它在短时间内访问您的资源,然后该资源将过期。

在此处查看Signed URL document,以了解其工作原理。

希望有帮助!

答案 1 :(得分:0)

最终我发现,要从网址中隐藏访问密钥和签名,只需添加

AWS_QUERYSTRING_AUTH = False

在settings.py中并将S3存储桶设置为公共。