Gérer l'accès aux fichiers en ligne de commande
Sommaire
Prérequis
- Avoir créé un utilisateur API
- Avoir généré et téléchargé le fichier Openstack RC
- Avoir installé le client Openstack
- Avoir créé un bucket
Gérer l'accès aux fichiers
Les commandes suivantes sont exécutées avec le client Openstack en ligne de commande
Pour rendre public un bucket, utiliser la commande suivante :
swift post Container-1 -r ".r:*,.rlistings"
Pour rendre privé un bucket, utiliser la commande suivante :
swift post Container-1 -r ""
Pour voir les règles de partage du bucket, utiliser la commande suivante :
openstack container show Container-1
+--------------+-----------------+
| Field | Value |
+--------------+-----------------+
| account | v1 |
| bytes_used | 0 |
| container | Container-1 |
| object_count | 1 |
| read_acl | .r:*,.rlistings |
+--------------+-----------------+
La ligne read_acl nous indique ici que le bucket est ouvert en lecture à tout le monde (.r:*) et que ses fichiers sont listés sur l'URL du bucket (.rlistings)
Description des paramètres de la commande
swift post [--read-acl <acl>] [--write-acl <acl>] [--sync-to]
[--sync-key <sync-key>] [--meta <name:value>]
[--header <header>]
[<container> [<object>]]
[container]
Nom du bucket.
[object]
Nom de l'objet.
Arguments optionnels :
-r, --read-acl <acl>
ACL en lecture pour les buckets. Résumé rapide de la syntaxe des ACL : .r:*
, .r:-.example.com
, .r:www.example.com
, account1
(API identity 1.0 seulement), account1:*
, account2:user2
(API identity v2.0+).
-w, --write-acl <acl>
ACL en écriture pour les buckets. Résumé rapide de la syntaxe des ACL :account1
(API identity 1.0 seulement), account1:*
, account2:user2
(API identity v2.0+)..
-t, --sync-to <sync-to>
Pour la synchronisation des conteneurs, pour la réplication multi-cluster.
-k, --sync-key <sync-key>
Clé de synchronisation pour les conteneurs, pour la réplication multi-cluster.
-m, --meta <name:value>
Définir un élément de métadonnées. Cette option peut être répétée.
Exemple: -m Color:Blue -m Size:Large
-H, --header <header:value>
Ajouter un en-tête de demande personnalisé. Cette option peut être répétée.
Exemple: -H "content-type:text/plain" -H "Content-Length: 4000"