- OpenStack Swift prakticky (1): object store pro vás
- OpenStack Swift prakticky (2): verzování objektů
- OpenStack Swift prakticky (3): omezení platnosti objektů
- OpenStack Swift prakticky (4): Dočasné URL
- OpenStack Swift prakticky (5): řízení přístupu
- OpenStack Swift prakticky (6): Object store jako statický web
Zatím jsme vytvářeli kontejnery, které byly dostupné pouze uživatelům našeho tenantu (tedy kromě vygenerování dočasné URL). OpenStack Swift ale disponuje možností vytvářet přístupová pravidla (ACL) jak pro čtení, tak pro zápis. Ve výchozím stavu nebudou žádná (tedy ke kontejneru mohou jen uživatelé tenantu).
tomas@labserver:~$ swift stat dalsiKontejner Account: AUTH_d20fb4c9c0d645b4962484390a3be701 Container: dalsiKontejner Objects: 1 Bytes: 39 Read ACL: Write ACL: Sync To: Sync Key: Accept-Ranges: bytes X-Storage-Policy: General X-Timestamp: 1450089249.14773 X-Trans-Id: tx377fa57478f34b76a641a-00566f017b Content-Type: text/plain; charset=utf-8
Můžete povolit přístup jinému tenantu (v takovém případě zadáváte jména tenantů oddělená čárkou) nebo jen konkrétním osobám nějakých tenantů (pak zadáváte tenant:jméno a pokud je takových záznamů víc, oddělujete je čárkou). Můžete také vytvořit kontejner, který je volně přístupný ke čtení odkudkoli bez jakéhokoli ověření (váš object store pak může třeba přímo servírovat obrázky na web přímo bez „průtoku“ web serverem a tak podobně). Pro volný přístup se používá řetězec .r:*,.rlistings.
Povolte tomuto kontejneru veřejný přístup.
tomas@labserver:~$ swift post dalsiKontejner -r '.r:*,.rlistings' tomas@labserver:~$ swift stat dalsiKontejner Account: AUTH_d20fb4c9c0d645b4962484390a3be701 Container: dalsiKontejner Objects: 1 Bytes: 39 Read ACL: .r:*,.rlistings Write ACL: Sync To: Sync Key: Accept-Ranges: bytes X-Trans-Id: txc4733acddd3f4a758f245-00566f08e2 X-Storage-Policy: General X-Timestamp: 1450089249.14773 Content-Type: text/plain; charset=utf-8
Ze svého počítače si nechte vypsat obsah kontejneru zcela bez přihlášení na adrese
http://xx.xx.xx.xx:8080/v1/AUTH_d20fb4c9c0d645b4962484390a3be701/dalsiKontejner
Funguje – můžete zadat přímo URL vašeho objektu (tedy přidat mujsoubor.txt na konec předchozí).