Pengguna (user) memiliki peran di account (akun). Misalnya, pengguna dengan peran admin memiliki akses penuh ke semua kontainer dan objek dalam akun. Anda dapat mengatur daftar kontrol akses (ACL) di tingkat kontainer dan daftar dukungan untuk membaca dan menulis akses, dimana Anda mengatur dengan header X-Container-Read
dan X-Container-Write
.
Untuk memberikan pengguna akses baca, gunakan perintah swift post dengan parameter -r
. Untuk memberikan pengguna akses menulis, gunakan parameter -w
.
Berikut ini adalah contoh dari ACL read untuk kontainer:
Permintaan dengan header HTTP referer dapat membaca isi kontainer:
$ swift post CONTAINER -r ".r:*"
Permintaan dengan header HTTP referer dapat membaca dan mendaftar konten kontainer:
$ swift post CONTAINER -r ".r:*,.rlistings"
Daftar header referer HTTP tertentu diizinkan untuk membaca konten kontainer:
$ swift post CONTAINER -r \
".r:openstack.example.com,.r:swift.example.com,.r:storage.example.com"
Daftar header referer HTTP spesifik membantah akses baca:
$ swift post CONTAINER -r \
".r:*,.r:-openstack.example.com,.r:-swift.example.com,.r:-storage.example.com"
Semua pengguna yang berada di project1 dapat membaca konten kontainer:
$ swift post CONTAINER -r "project1:*"
User1 dari project1 dapat membaca konten kontainer:
$ swift post CONTAINER -r "project1:user1"
Daftar pengguna tertentu dan proyek diizinkan untuk membaca konten kontainer:
$ swift post CONTAINER -r \
"project1:user1,project1:user2,project3:*,project4:user1"
Berikut ini adalah contoh dari ACL write untuk kontainer:
Semua pengguna yang berada di project1 dapat menulis ke kontainer:
$ swift post CONTAINER -w "project1:*"
User1 dari project1 dapat menulis ke kontainer:
$ swift post CONTAINER -w "project1:user1"
Daftar pengguna tertentu dan proyek diizinkan untuk menulis ke kontainer:
$ swift post CONTAINER -w \
"project1:user1,project1:user2,project3:*,project4:user1"
Catatan
Untuk berhasil menulis ke sebuah kontainer, pengguna harus memiliki hak baca (selain untuk menulis) pada kontainer. Untuk semua contoh membaca/menulis ACL tersebut, seseorang dapat menggantikan nama proyek/pengguna dengan UUID proyek/pengguna , yaitu ``<project_uuid>: <user_uuid> ``. Jika menggunakan beberapa domain keystone, Format UUID diperlukan.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.