PHP前端开发

如何使用 Python OSS2 为特定路径对象设置公开访问权限?

百变鹏仔 5天前 #Python
文章标签 如何使用

如何在 python oss2 中仅对特定路径对象设置公开访问权限?

oss2 中使用 put_bucket_acl api 可以设置整个存储桶的访问控制列表 (acl),但在某些情况下,我们需要对特定路径下的对象设置单独的访问权限。例如,要使 sample/video 路径下的所有对象都可公开访问,并使后续写入该路径下的对象继承相同的 acl。

要实现此目的,请使用 put_bucket_policy api 而不是 put_bucket_acl。通过 put_bucket_policy,我们可以制定 bucketpolicy,其中包含授予匿名用户(principal 为 *)读取权限的声明,如下所示:

{    "Version": "2012-10-17",    "Statement": [        {            "Action": "oss:GetObject",            "Effect": "Allow",            "Principal": "*",            "Resource": ["acs:oss:*:*:sample/video/*"]        }    ]}

其中:

立即学习“Python免费学习笔记(深入)”;

更新此 bucketpolicy 将确保 sample/video 路径下的所有对象都可公开访问,并且写入该路径下的新对象也将继承此 acl。