2014-02-05 68 views
0

我需要在S3中为私有权限图像创建公共URL。 由于S3提供的唯一URL在公开打开时显示拒绝访问,因此我使用的URL如下所示在网站中显示图像,但问题在于它具有Access-Key,Signature等。Amazon S3 URL缓存和缩短

我还需要保留链接长时间处于活动状态,因为同一链接最多可使用一天。

https://s3.amazonaws.com/bucketName/folderName/fileName?response-content-disposition=attachment%3B%20filename%3D%22fileName%22&AWSAccessKeyId=accessKeyId&Expires=expiryTime&Signature=signatureKey 

我怎样才能在这里更好的URL,因为上面的网址也没有得到缓存在浏览器端和每个请求从S3

刚刚访问对于公共URL,它应该被打开,其长度较小,但不可编辑。

Do I need to add Open/DownLoad Permission to everyone when calling webservice S3? 

回答

0

我怎样才能在这里更好的URL,其长度较小,因为上面的网址也没有在浏览器端得到缓存

如果你希望你的网址可以通过浏览器缓存,你放置对象时可以设置Cache-controlExpires标题。

当我们调用webservice S3时,是否需要向每个人添加Open/DownLoad权限?

不,因为您使用了预先登记的网址。

+0

,在S3 URL中接受Amazon accessKey是否被接受? – fortm

+1

是的,这是AWS的设计。如果您需要更安全的话,请尝试在此处使用IAM accesskey和v4身份验证方法:http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html – okwap

+1

由于url包含在每次页面加载时重新生成的签名,URL都不能被缓存。 –