Verrou de bucket

Configuration

Cette page présente la fonctionnalité de verrou de bucket, qui permet de configurer la règle de conservation d'un bucket Cloud Storage. Cette règle détermine la durée de conservation des objets dans le bucket. Cette fonctionnalité permet également de verrouiller les règles de conservation des buckets, empêchant ainsi la suppression de ces règles ou la réduction de leur durée.

Cette fonctionnalité peut assurer un stockage immuable sur Cloud Storage. Associé au mode de journalisation d'audit détaillé qui consigne les détails des requêtes et des réponses Cloud Storage, le verrou de bucket peut vous aider à respecter les exigences réglementaires et de conformité, telles que celles associés à FINRA, SEC et CFTC. Le verrou de bucket peut également vous aider à respecter certaines réglementations applicables à la conservation des données médicales.

Présentation

  • Vous pouvez ajouter une règle de conservation à un bucket en vue de spécifier une durée de conservation.

    • Lorsqu'une règle de conservation des buckets est définie, les objets du bucket ne peuvent être supprimés ou remplacés que lorsque leur ancienneté est supérieure à la durée de conservation.

    • La règle s'applique rétroactivement aux objets existants dans le bucket, ainsi qu'aux objets qui y sont ajoutés. Cela diffère de la fonctionnalité de verrou de conservation des objets, qui vous permet de définir des exigences de conservation des données pour chaque objet.

  • Vous pouvez verrouiller la règle de conservation d'un bucket pour la définir de manière permanente sur le bucket.

    • Une fois que vous avez verrouillé une règle, vous ne pouvez plus la supprimer ni réduire la durée de conservation définie.

    • Vous ne pouvez pas supprimer un bucket associé à une règle verrouillée, à moins que chaque objet qu'il contient n'ait atteint la date limite de conservation.

    • Vous pouvez augmenter la durée de conservation associée à une règle verrouillée.

Règles de conservation des buckets

Vous pouvez inclure une règle de conservation au moment de la création d'un bucket, ainsi qu'ajouter une règle de conservation à un bucket existant. Le fait de placer une règle de conservation sur un bucket garantit que tous les objets actuels et futurs qu'il contient ne seront ni supprimés, ni remplacés tant qu'ils n'auront pas atteint l'ancienneté que vous avez définie dans la règle. Les tentatives de suppression ou de remplacement des objets dont l'ancienneté est inférieure à la durée de conservation échouent en générant une erreur 403 - retentionPolicyNotMet.

Par exemple, supposons que vous ayez un bucket contenant deux objets : l'objet A que vous avez ajouté il y a un mois et l'objet B que vous avez ajouté il y a deux ans. Si vous appliquez une règle de conservation au bucket avec une durée de conservation d'un an, vous ne pourrez pas supprimer ni remplacer l'objet A pendant 11 mois. En effet, son ancienneté n'étant que d'un mois, vous devez attendre que celle-ci soit d'au moins un an pour pouvoir supprimer ou remplacer l'objet. L'objet B, en revanche, peut être supprimé ou remplacé immédiatement, car son ancienneté est supérieure à la durée de conservation. Si vous avez décidé de remplacer l'objet B, l'ancienneté de la nouvelle version de cet objet revient à 0 an.

Des métadonnées indiquant le délai d'expiration de la conservation sont associées à chaque objet pour indiquer à quel moment un objet individuel peut être supprimé d'un bucket soumis à une règle de conservation. Ces métadonnées contiennent la date et l'heure auxquelles l'objet aura rempli les conditions de durée de conservation.

Éléments généraux à prendre en compte

Lorsque vous utilisez des règles de conservation, gardez à l'esprit les points suivants :

  • Si la règle de conservation d'un bucket n'est pas verrouillée, vous pouvez l'augmenter, la diminuer ou la supprimer.

  • Les métadonnées modifiables d'un objet ne sont pas soumises à la règle de conservation du bucket. Elles peuvent être modifiées, même si l'objet lui-même ne peut pas l'être.

  • La règle de conservation d'un bucket contient une date d'entrée en vigueur, soit le moment auquel tous les objets du bucket sont garantis conformes à la durée de conservation.

  • Pour connaître la date la plus proche à laquelle un objet donné peut être supprimé d'un bucket soumis à une règle de conservation, affichez la partie correspondant à la date d'expiration de la conservation dans les métadonnées de l'objet.

Éléments à prendre en compte concernant d'autres fonctionnalités

Vous trouverez ci-dessous les interactions entre les règles de conservation et d'autres fonctionnalités de Cloud Storage :

Durées de conservation

Les durées de conservation sont mesurées en secondes. Cependant, certains outils, tels que la console Google Cloud et Google Cloud CLI, vous permettent de définir et d'afficher des durées de conservation dans d'autres unités de temps pour plus de commodité. Dans ce cas, les conversions suivantes s'appliquent :

  • Une journée correspond à 86 400 secondes.
  • Un mois correspond à 31 jours, soit 2 678 400 secondes.
  • Une année correspond à 365,25 jours, soit 31 557 600 secondes.

Vous pouvez définir une durée de conservation maximale de 3 155 760 000 secondes (100 ans).

Concernant gcloud CLI, lorsque vous spécifiez une durée de conservation, spécifiez un entier et une unité, où l'unité peut être s, d, m ou y pour indiquer respectivement les secondes, les jours, les mois ou les années. Par exemple, 1d43200s définit une durée de conservation de 1 jour et 43 200 secondes (un jour et demi).

Verrous des règles de conservation

Lorsque vous verrouillez la règle de conservation d'un bucket, vous interdisez sa suppression ou la réduction de sa durée de conservation (celle-ci, en revanche, pouvant toujours être augmentée). Si vous essayez de supprimer une règle ou d'en réduire la durée sur un bucket verrouillé, vous obtenez une erreur 400 BadRequestException. Une fois qu'une règle de conservation est verrouillée, vous ne pouvez pas supprimer le bucket tant que la durée de conservation de chaque objet qu'il contient n'est pas écoulée.

Le verrouillage de la règle de conservation d'un bucket est irréversible. Il est important de connaître les implications d'une telle opération avant d'utiliser cette fonctionnalité. Lorsque vous utilisez une règle de conservation déverrouillée, vous avez la possibilité de la supprimer, et donc de supprimer des objets quand vous le souhaitez. Lorsque vous verrouillez une règle de conservation, vous devez supprimer l'intégralité du bucket afin de "supprimer" la règle. Cependant, vous ne pouvez pas supprimer le bucket s'il contient des objets dont les conditions de durée de conservation ne sont pas remplies. Ainsi, pour "supprimer" une règle de conservation verrouillée, vous devez attendre que chaque objet du bucket ait atteint sa date limite de conservation, auquel cas vous pouvez supprimer le bucket.

En outre, lorsque vous verrouillez une règle de conservation, Cloud Storage applique automatiquement un privilège à l'autorisation projects.delete du projet contenant le bucket. Une fois en place, le privilège empêche la suppression du projet. Pour supprimer le projet, vous devez d'abord supprimer tous ces privilèges. Notez que la suppression d'un privilège nécessite l'autorisation resourcemanager.projects.updateLiens, qui fait partie des rôles roles/owner et roles/resourcemanager.lienModifier.

Pour connaître en détail la manière dont le verrouillage d'une règle de conservation facilite le respect des réglementations en termes de conservation des données, consultez la page sur la conformité.

Étape suivante