[英]How to securely access a file in the application using s3 bucket URL
在我的应用程序中,我们必须使用直接s3
存储桶url
在图标单击时在新选项卡中打开一些pdf
文件,如下所示:
http://MyBucket.s3.amazonaws.com/Certificates/1.pdf?AWSAccessKeyId=XXXXXXXXXXXXX&Expires=1522947975&Signature=XXXXXXXXXXXXXXXXX
我觉得这有些不安全,因为用户可以看到存储桶名称, AWSAccessKeyId
, Expiration
和Signature
。 这仍然被认为是安全的吗? 还是有更好的方法来解决这个问题?
允许用户看到这些参数不是问题,因为;
但是我有两个建议给你; 1.使用您自己的域,因此看不到存储桶(如果使用CloudFornt,则可以使用AWS提供的免费SSL),2.使用HTTPS而不是纯HTTP。
并且,如果出于任何原因您绝对不希望用户看到AWS参数,那么我建议您通过自己的API代理对S3的访问。 (尽管我认为这是不必要的)
我看到您使用http访问(没有SSL)。 您可以使用S3对多个域进行虚拟托管。
https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html
并根据您的域创建签名的URL,您一切顺利。
如果使用SSL,则可以使用Cloudfront
并将Cloudfront原点配置为指向您的S3存储桶。
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.