安装阿里云 OSS Python SDK:
pip install oss2
导入 OSS Python SDK:
import oss2
初始化 OSS 客户端:
auth = oss2.Auth('<your-access-key-id>', '<your-access-key-secret>')
bucket = oss2.Bucket(auth, '<your-endpoint>', '<your-bucket-name>')
其中,<your-access-key-id>
和 <your-access-key-secret>
分别是阿里云账号的 AccessKeyId
和 AccessKeySecret
,<your-endpoint>
是您的 OSS 地域访问域名,<your-bucket-name>
是您的 OSS 存储空间名称。
遍历所有目录及文件,并修改权限为公共读:
for obj in oss2.ObjectIterator(bucket):
if obj.is_prefix(): # 如果是目录,则修改目录权限
bucket.put_object_acl(obj.key, oss2.OBJECT_ACL_PUBLIC_READ)
else: # 如果是文件,则修改文件权限
bucket.update_object_meta(obj.key, {'x-oss-object-acl': oss2.OBJECT_ACL_PUBLIC_READ})
上述代码通过遍历所有目录及文件,对每个目录设置公共读权限,对每个文件更新元数据(Header)设置公共读权限。