Stocker et accéder à des fichiers sur S3



Dans ce chapitre, je vous propose d'essayer S3 en créant un bucket et en y ajoutant des fichiers.

Rendez-vous sur S3 (Simple Storage Service) dans votre console AWS. Vous devriez voir qu'il n'y a pour l'instant aucun bucket (compartiment) :



Si la page n'est pas vide et que vous voyez des buckets, ce sont probablement des buckets créés précédemment par Elastic Beanstalk. N'hésitez pas à les supprimer. Si ça ne fonctionne pas, il faut modifier les droits du bucket pour pouvoir les supprimer.



Création d'un bucket

Nous ne pourrons pas faire grand chose tant que nous n'aurons pas créé un bucket (compartiment). Alors allons-y ! Cliquez sur "Créer un compartiment".



Il vous faudra donner un nom unique à votre bucket. Ce nom ne doit jamais avoir été utilisé par quelqu'un d'autre. Ca fonctionne un peu comme les noms de domaine ! Je vais appeler le mien "mateotestbucket", celui-là n'est pas pris !

Vous pouvez aussi indiquer ici la région où le bucket sera créé.

Passez à l'étape suivante :



Nous n'allons utiliser aucune de ces options, mais pour information en voici quelques-unes qui pourraient vous intéresser dans le futur :

  • Versioning : permet d'activer le versioning des fichiers. Si vous écrasez un fichier par une nouvelle version, l'ancienne version reste sauvegardée au cas où en ayez besoin.
  • Balises : comme pour les serveurs, les balises vous permettent de "marquer" les fichiers pour les retrouver plus facilement par la suite. C'est une façon de les regrouper par thème.
  • Journalisation : si vous voulez conserver une trace de ce qu'il s'est passé dans le bucket.
  • Chiffrement : vous permet de chiffrer les données, si ce sont des données sensibles.

L'étape suivante, très importante, vous demande quelles autorisations vous voulez définir :



Ici, par défaut :

  • Votre utilisateur pourra lire et écrire des objets dans le bucket, et il pourra ensuite lire et écrire par-dessus chaque objet. En gros, vous pouvez tout faire.
  • Le bucket n'est pas accessible publiquement (c'est "recommandé"). En gros, à part vous, le reste du monde ne peut rien faire, même pas lire les fichiers.

Ah les droits d'accès... Vous n'imaginez pas combien de "failles de sécurité" sont liées à des buckets S3 contenant des backups de bases de données... qui ont été laissés publiquement accessibles. C'est pour cela qu'Amazon recommande par défaut de ne pas ouvrir l'accès aux buckets.
Bien sûr, si vous utilisez votre bucket pour que des visiteurs uploadent des fichiers qu'ils souhaitent ensuite récupérer, il faudra bien l'ouvrir. Mais ne le faites que lorsque c'est nécessaire.

A la fin, on vous fait un récapitulatif et vous n'avez qu'à valider :



Après quelques instants, votre bucket est créé :





Ajouter et modifier des objets dans le bucket

Cliquez sur le bucket pour rentrer à l'intérieur. Pour l'instant, celui-ci est vide (quelle surprise !) :



Les onglet tels que "Propriétés" et "Autorisations" vous permettent de modifier le fonctionnement de votre bucket après sa création. Si vous allez dans "Gestion", vous pouvez aussi avoir accès à des statistiques d'utilisation, mettre en place la réplication des données entre datacenters, ou définir une expiration des objets après un certain temps.

Nous allons faire quelque chose de beaucoup plus basique : nous allons charger un fichier dans le bucket. Cliquez sur "Charger" :



Déposez ce que vous voulez : ça peut être une image, une vidéo, un fichier ZIP...

L'assistant vous propose, si vous le souhaitez, de définir des autorisations et propriétés spéciales pour cet objet. Ce n'est pas obligatoire : par défaut l'objet va prendre les autorisations configurées dans le bucket. Vous pouvez donc vous contenter de cliquer sur "Charger". C'est tout simple !

J'ai personnellement uploadé une photo de montagne. Voici ce qu'il y a dans mon bucket :



Si vous cliquez sur le fichier, vous verrez plus d'informations :



D'ici, vous pouvez le télécharger, modifier ses propriétés, etc. Deux éléments me semblent particulièrement intéressants :

  • "Rendre public" vous permet de rendre ce fichier (et uniquement celui-là) public. Si vous ne le faites pas, aucune personne extérieure ne pourra télécharger le fichier.
  • Le "lien" qui vous permet d'accéder au fichier. Si celui-ci n'est pas public, vous verrez un message d'erreur XML à la place.

Une fois le fichier rendu public, vous pouvez le rendre privé à nouveau en allant dans les autorisations, puis en décochant le droit "Lire l'objet" pour "Everyone".

Si vous souhaitez au contraire supprimer le fichier, faites un clic droit dessus depuis la liste des fichiers et choisissez "Supprimer" :



C'est tout ?... C'est vraiment basique S3 !

Basique peut-être, mais ça sert à énormément de monde. Stocker un fichier est un besoin universel : pas étonnant que S3 soit si populaire !

En pratique, vous verrez que S3 propose de nombreuses options très pratiques (versionnement, chiffrement, réplication...).

Doit-on vraiment passer par l'interface d'AWS pour ajouter et supprimer des fichiers ?

Non ! L'interface d'AWS est pratique, mais en fait on passe généralement par une API. Les API d'AWS sont très bien faites. Celle de S3 peut être utilisée pour charger des fichiers depuis votre site web, comme nous le verrons plus tard.





Unité suivante : Définir les droits d'accès à S3

Continue        
Retour