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?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号