我正在使用Ceph Nautilus,我们已经安装了rados网关。我们的存储桶之一设置为authenticated-read
,但是存储桶中创建的对象不会继承该存储桶。
import boto.s3.connection
rgw = boto.s3.connection.connect(access_key = S3_ACCESS_TOKEN, host="127.0.0.1")
bkt = rgw.get_bucket('my_bucket')
print("Bucket ACL:\n", bkt.get_acl())
fe = bkt.get_key("firstEntry")
print("First Entry ACL:", fe.get_acl())
这会吐出来:
Bucket ACL:
<Policy: http://acs.amazonaws.com/groups/global/AuthenticatedUsers = READ, my_user (owner) = FULL_CONTROL>
third Entry ACL: <Policy: my_user (owner) = FULL_CONTROL>
我试图遍历所有用户,并授予他们访问权限以读取所有对象
for user in user_list:
bkt.add_user_grant("READ", user_id=user, display_name=user, recursive=True)
但是我达到了100个ACL限制。我在Ceph文档或堆栈溢出中找不到更好的答案。谢谢您的帮助。