【问题标题】:AWS-SDK setting ACL to public-read using put objectAWS-SDK 使用 put 对象将 ACL 设置为公共读取
【发布时间】:2016-11-11 08:13:56
【问题描述】:

s3 = Aws::S3::Resource.new(region:'us-east-1') obj = s3.bucket("bucket-name").object("filename.json", acl:'public-read') obj.put(body: objects.to_json)

上述代码按预期工作,但权限除外。当我查看它们时,当我需要将它们设置为公共时,读取权限设置为所有者。

【问题讨论】:

    标签: ruby-on-rails amazon-web-services amazon-s3 aws-sdk


    【解决方案1】:

    此代码中存在语法问题,您必须在 score 下使用而不是 hypen 以获得权​​限。检查下面的代码使用public_read而不是public-read

    s3 = Aws::S3::Resource.new(region:'us-east-1')
    obj = s3.bucket("bucket-name").object("filename.json", acl:'public_read')
    obj.put(body: objects.to_json)
    

    【讨论】:

    • 您能否提供您的提案的链接? - 我读过的所有地方都显示“公开阅读”是正确的使用格式。
    【解决方案2】:

    s3 = Aws::S3::Resource.new(region:'us-east-1') obj = s3.bucket("bucket").object("data/filename.json") obj.put(body: objects.to_json, acl:'public-read')

    原来我在错误的位置调用它

    【讨论】:

      猜你喜欢
      • 2018-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-17
      • 2020-05-05
      • 1970-01-01
      • 2014-11-24
      相关资源
      最近更新 更多