python oss2 如何为特定路径下所有对象设置公开访问权限,并继承路径的 acl
在 python oss2 中,要为特定路径下的所有对象设置公开访问权限,并让新插入的对象继承路径的 acl,可以使用 put_bucket_policy api,而不是 put_bucket_acl api。
put_bucket_policy api 允许用户设置 bucket 的访问控制策略,可以针对特定路径进行设置。以下是如何使用 python oss2 实现该操作:
import oss2# 创建 OSS2 客户端实例oss2_client = oss2.OssClient('endpoint', 'access key id', 'access key secret')# Bucket 名称bucket_name = 'bucket-name'# 欲公开访问的路径前缀path_prefix = 'sample/video'# 创建 Bucket 策略bucket_policy = { "Version": "1", "Statement": [ { "Action": [ "oss:GetObject" ], "Effect": "Allow", "Principal": {"*": ""}, # 授予所有用户 (匿名用户) 权限 "Resource": ["oss://{}/{}/".format(bucket_name, path_prefix)] # 设置路径前缀 } ]}# 设置 Bucket 策略oss2_client.put_bucket_policy(bucket_name, bucket_policy)
登录后复制
通过上述代码,可以将 sample/video 路径下的所有对象设置为公开访问,而且该路径下以后新写入的对象也都会继承这个 acl。
立即学习“Python免费学习笔记(深入)”;
以上就是如何使用 Python OSS2 为特定路径下所有对象设置公开访问权限并继承 ACL?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2180793.html