Stockage Objet - Architecture
Last updated
Last updated
Un Object Store est un conteneur logique pour les Buckets et les objets stockés dans le service de stockage objet de cegedim.cloud.
Il est accompagné d'un Object User dédié qui est le seul autorisé à lister et à gérer les objets dans cet Object Store. Vous pouvez créer d'autres Object User.
Lors de la création d'un Object Store, vous devez choisir :
Un nom simple (voir )
Un centre de données :
EB4 - Centres de données Boulogne (non répliqué)
ET1 - Centres de données Toulouse (non répliqué)
EB4-ET1 - Les données sont répliquées sur EB4 et ET1 et sont accessibles depuis les deux centres de données.
Vous n'êtes pas limité et pouvez créer autant de Object Store que vous le souhaitez.
Néanmoins, il peut être préférable de segmenter les objets par Bucket pour les objets d'une même application ou de différentes applications.
Nous recommandons d'utiliser un Object Store au niveau projet, "groupe de projets" ou application, et un Bucket au niveau de la "typologie des fichiers" ou de l'environnement.
Pour plus d'informations sur la création d'un Object Store, veuillez lire les .
Un Bucket est un conteneur d'objets délimité logiquement. Chaque objet est stocké dans un Bucket.
Un Bucket peut être créé à l'aide d'un client S3 et possède des attributs que vous pouvez utiliser pour contrôler son comportement et celui de ses objets, par exemple :
Les politiques de gestion de version qui vous permettent le versionnage des objets
Les politiques de gestion de Bucket qui vous permettent de configurer les autorisations et les restrictions pour les objets situés dans un Bucket**.**
Un objet est l'équivalent d'un fichier sur un système de fichiers classique.
Chaque objet appartient à un Bucket et possède une "clé"
comme identifiant unique.
Notez que la notion de dossiers n'existent pas dans un service de stockage objet, mais vous pouvez utiliser des préfixes et des délimiteurs pour organiser les objets que vous stockez dans les Buckets.
Un préfixe est une chaîne de caractères au début du nom de la "clé" de l'objet.
Un délimiteur est un caractère, généralement le slash "/
", utilisé pour séparer chaque niveau d'objets et simuler une hiérarchie semblable à système de fichiers.
Par exemple, si vous stockez des informations sur les clients, organisées par années et par mois :
Dans cet exemple "/
" est le délimiteur, et client1/2020/04
est un un préfixe.
Voir la page Compatibilité API S3 pour la liste des API S3 supportées, non supportées ainsi que les comportements spécifiques à la solution de stockage objet de cegedim.cloud.
Le service de Stockage Objet de cegedim.cloud fournit 2 points endpoints:
https://storage-eb4.cegedim.cloud
Permet d'utiliser le service de Stockage Objet via EB4 - Centre de données de Boulogne.
https://storage-et1.cegedim.cloud
Permet d'utiliser le service de Stockage Objet via ET1 - Centre de données de Toulouse.
Dans le cas d'un Object Store géo-répliqué (EB4-ET1), les deux endpoints vous permettent d'accéder à vos objets.
Si vous téléchargez un objet en utilisant le endpoint EB4, le site EB4 deviendra le propriétaire de l'objet, et vice versa pour ET1.
L'accès aux Buckets se fait par l'intermédiaire d'un Object User.
Lorsqu'un Object Store est créé, un Object User est automatiquement créé avec le label "Initial S3 user".
L'Object User dispose d'une access_key et d'une secret_key qui sont toutes deux générées automatiquement par cegedim.cloud.
Vous avez la possibilité de créer d'autres Object Users au sein de votre Object Store.
Un Object Users est lié à un seul Object Store et ne peut pas être utilisé pour effectuer des opérations sur un autre Object Store.
Pour plus d'informations, reportez-vous à la page Gérer des Objects Users.
A tout moment, vous avez la possibilité de re-générer la secret_key d'un Object User, pour des raisons de sécurité ou lorsque l'Object User est compromis.
Lors de la modification de la secret_key, vous pouvez ajouter une "période de grâce" pendant laquelle l'ancienne et la nouvelle clé secret_key sont valides et acceptées par cegedim.cloud.
Les autorisations sont gérées au niveau du Bucket en utilisant les politiques de gestion des Buckets.
Les politiques de gestion des Buckets vous permettent d'avoir une gestion fine des permissions à appliquer sur les objets et les Object Users, basées ou non sur des déclarations conditionnelles, comme l'access_key de l'Object User ou le Adresse IP source.
Lors de la création d'un Bucket, par défaut, aucune politique de gestion n'existe. Aussi, par défaut, un Bucket ne dispose pas d’accès public/anonyme.
Cela signifie que seul l'Object Users qui a créé le Bucket peut y accéder.
Pour plus d'informations sur les politiques de gestion des Buckets, reportez-vous à la page Politiques de Buckets.
Le service de stockage objet cegedim.cloud est uniquement disponible via le protocole HTTPS sur le port 443.
La fonctionnalité S3 Bucket logging n'est pas supporté le service de Stockage Objet cegedim.cloud.
Toutes les opérations sont enregistrées par cegedim.cloud.
Les journaux incluent les opérations sur l'Object Store, l'Object User, ainsi que les opérations faites au niveau des Buckets et des objets (GET, PUT, DELETE,...).
Si vous avez besoin d'une extraction des opérations réalisées sur vos ressources, veuillez contacter le support cegedim.cloud.
Le service de Stockage Objet cegedim.cloud supporte le partage d'objets à l'aide d'URLs pré-signées. Vous pouvez partager des objets avec un tiers en créant une URL pré-signée.
Lorsque vous créez une URL pré-signée, vous devez fournir :
Vos informations d'identification de sécurité
Un nom de bucket et une clé d'objet
Une méthode HTTP (PUT pour le téléchargement d'objets)
Un délai d'expiration
Les URL pré-signées ne sont valables que pour la durée spécifiée.
Pour plus d'informations sur l'URL pré-signée, reportez-vous à la page URL Pré-signée.
Le service de Stockage Objet cegedim.cloud supporte la définition de politiques des gestion des Buckets.
Ces politiques fournissent à des utilisateurs spécifiques, ou à tous les utilisateurs, des autorisations conditionnelles et granulaires pour des actions spécifiques.
Les conditions de politique peuvent être utilisées pour attribuer des autorisations à une gamme d'objets qui correspondent à la condition et peuvent être utilisées pour attribuer automatiquement des autorisations aux objets nouvellement créés.
Exemple de politique de gestion d'un Bucket :
Pour plus d'informations sur les politiques de gestion des Buckets, reportez-vous à la page Politiques de Buckets.
Le service de Stockage Objet cegedim.cloud supporte les configuration de cycle de vie des objets dans un Bucket.
Une configuration de cycle de vie est un ensemble de règles définissant les actions applicables à un groupe d'objets. Seules les actions d'expiration sont prises en charge.
Vous pouvez définir une configuration de cycle de vie pour supprimer automatiquement les objets.
Exemple de configuration du cycle de vie :
Pour plus d'informations sur la gestion des configurations de cycle de vie, reportez-vous à la page Configuration de cycle de vie.
Le service de stockage objet cegedim.cloud supporte le verrouillage des objets (Object Lock).
Object Lock empêche la suppression des objets et de leurs versions, pendant une période définie par l'utilisateur.
La politique de rétention est définie à l'aide de l'API S3 ou des valeurs par défaut au niveau du Bucket ou directement sur l'objet.
Les objets sont verrouillés pour la durée de la période de rétention. Les scénarios de rétention légale sont également pris en charge.
Il existe deux types de protection:
Retention period: Spécifie une période de temps fixe pendant laquelle une version d'objet est verrouillée. Pendant cette période, votre version de l'objet est protégée en écriture et ne peut pas être modifiée ou supprimée.
Legal hold: Offre la même protection qu'une période de rétention, mais sans date d'expiration. Au contraire, Legal hold reste en place jusqu'à ce que vous la désactiviez explicitement. Les legal hold sont indépendantes des périodes de rétention.
Il existe deux modes pour la période de rétention :
Avec le mode conformité, si vous appliquez une période de rétention par erreur (par exemple 6 ans au lieu de 6 jours), cegedim.cloud n'a aucune possibilité de supprimer ou de réduire la période de rétention.
Une bonne pratique consiste à commencer avec mode gouvernance pour effectuer des tests, puis de passer ensuite, en mode conformité.
Pour plus d'informations sur Object Lock, reportez-vous à la page Object Lock.