如何设置特定路径下的 OSS2 对象为公开访问并继承路径 ACL?

如何设置特定路径下的 oss2 对象为公开访问并继承路径 acl?

如何设置特定路径下的 oss2 对象为公开访问并继承路径 acl

oss2 提供了全面的访问控制功能,允许细分到特定路径下的对象。要设置特定路径下的所有对象的公开访问权限,并让新插入的对象继承该路径的 acl,可以考虑以下方法:

解决方案:

使用 put_bucket_policy api 而不是 put_bucket_acl。

put_bucket_policy 允许指定细粒度的 bucketpolicy 来控制特定路径的访问权限。下面是一个示例策略:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:GetObject",
      "Resource": ["arn:aws:s3:::my-bucket/sample/video/*"]
    }
  ]
}

使用方法:

  1. 替换 my-bucket 为你的存储桶名称。
  2. 确保 sample/video/* 为你想要设置公开访问的路径。
  3. 使用 put_bucket_policy api 设置策略。

其他说明:

  • 所谓“公开访问”意味着匿名用户(principal 为 *)可以只读访问该路径下的对象。
  • 官方提供了多个 bucketpolicy 样例,可以参考这些样例来自定义策略。

通过使用 put_bucket_policy,你可以为特定路径设置公开访问权限,并让新插入的对象继承该路径的 acl。这提供了更精细的访问控制,更好地满足你的安全和共享需求。

以上就是如何设置特定路径下的 OSS2 对象为公开访问并继承路径 ACL?的详细内容,更多请关注硕下网其它相关文章!