如何在 Openstack Swift 容器中禁用对象列表
How to disable object lists in Openstack Swift container
我们正在使用 Openstack 对象存储 (SWIFT) 来存储大文件
当我们使用浏览器导航到容器时,它列出了所有属于的对象。
文档位于:https://developer.openstack.org/api-ref/object-storage/?expanded=#show-container-details-and-list-objects
我们不希望客户可以通过安全浏览此列表文件
我们怎样才能禁用它?
可能您的容器具有 header "X-Container-Read" 值:
.r:*,.rlistings
其中:
.r:* => public 阅读
.rlistings => public 列表
您应该删除 public 列表 conf,更新 header "X-Container-Read"。
使用 curl,它会是这样的:
curl -X POST -H 'X-Auth-Token: <token-id>' -H 'X-Container-Read: .r:*' <AdminURL>/<container>
使用 python-swiftclient,此语法应该有效:
swift post --read-acl .r:* container
顺便说一句,请记住设置环境变量或在命令行上告知您的凭据以正确使用 python-swiftclient。
PS: 不会删除阅读权限,只删除列表权限
我们正在使用 Openstack 对象存储 (SWIFT) 来存储大文件
当我们使用浏览器导航到容器时,它列出了所有属于的对象。
文档位于:https://developer.openstack.org/api-ref/object-storage/?expanded=#show-container-details-and-list-objects
我们不希望客户可以通过安全浏览此列表文件
我们怎样才能禁用它?
可能您的容器具有 header "X-Container-Read" 值:
.r:*,.rlistings
其中:
.r:* => public 阅读
.rlistings => public 列表
您应该删除 public 列表 conf,更新 header "X-Container-Read"。
使用 curl,它会是这样的:
curl -X POST -H 'X-Auth-Token: <token-id>' -H 'X-Container-Read: .r:*' <AdminURL>/<container>
使用 python-swiftclient,此语法应该有效:
swift post --read-acl .r:* container
顺便说一句,请记住设置环境变量或在命令行上告知您的凭据以正确使用 python-swiftclient。
PS: 不会删除阅读权限,只删除列表权限