我使用aws-sdk为我的s3存储桶创建文件的下载链接
控制器
s3 = AWS::S3.new(
access_key_id: ENV["AWS_ACCESS_KEY_ID"],
secret_access_key: ENV["AWS_SECRET_KEY"]
)
bucket = s3.buckets['my_bucket']
object = bucket.objects["path/to/file.zip"]
@link_url = object.url_for(:get, { :expires => 20.minutes.from_now, :secure => true })
查看
<%= link_to "Download", @link_url %>
当我将鼠标悬停在链接上时,我可以在网址中看到我的access_key_id。这样安全吗?
答案 0 :(得分:2)
是的,AWS_ACCESS_KEY_ID是公共的,需要匹配URL签名。但AWS_SECRET_KEY是私有的。