【发布时间】:2015-02-10 09:49:42
【问题描述】:
我在 Rails 4 / Paperclip 上有一个市场应用程序,并且正在使用 AWS S3 进行图像存储。我希望图片网址为 https(否则我的 ssl 证书会在某些浏览器上显示警告)
根据有关 paperclip AWS settings 的文档,它说“s3_protocol:为您的 S3 资产生成的 URL 的协议。可以是“http”、“https”或空字符串以生成与协议相关的 URL。默认值当您的 :s3_permissions 为 :public_read(默认)时为 'http',当您的 :s3_permissions 为其他任何值时为 'https'。"
根据上述,不同的 s3_permissions 在canned acl 部分下。
我的问题是对于我希望多个用户能够上传图片的市场,我应该使用 public-read-write 设置吗?这听起来不太安全——这是否意味着任何人都可以编辑图像或删除它?
理想情况下,我想要一个权限,其中只有图像所有者(卖家)或存储桶所有者(我)可以覆盖图像并且“AllUsers”读取图像。我应该使用哪个设置?还是我应该做点别的?
我的回形针设置:
config.paperclip_defaults = {
:storage => :s3,
:s3_credentials => {
:bucket => ENV['S3_BUCKET_NAME'],
:access_key_id => ENV['AWS_ACCESS_KEY_ID'],
:secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']
},
:s3_protocol => :https,
:s3_permissions => :public_read_write
}
【问题讨论】:
标签: ruby-on-rails amazon-s3 paperclip