Cette page explique comment créer des buckets de stockage Write Once Read Many (WORM) dans les environnements d'appliance Google Distributed Cloud (GDC) isolés. Cette section couvre les prérequis et les étapes nécessaires pour créer un bucket WORM avec une période de rétention définie, et pour accorder des autorisations d'accès à l'aide de liaisons de rôle. Ces informations vous permettent d'appliquer des pratiques strictes de conservation et d'immuabilité des données, ce qui vous offre un stockage de données robuste et conforme pour les enregistrements et les cas d'utilisation tels que les journaux d'audit.
Cette page s'adresse à des audiences telles que les administrateurs informatiques du groupe des opérateurs d'infrastructure ou les développeurs du groupe des opérateurs d'applications qui gèrent les paramètres de conformité et de conservation des données pour les buckets de stockage dans les environnements GDC isolés.
Avant de commencer
Un espace de noms de projet gère les ressources de bucket sur le serveur de l'API Management. Vous devez disposer d'un projet pour travailler avec des buckets et des objets.
Vous devez également disposer des autorisations de bucket appropriées pour effectuer l'opération suivante. Consultez Accorder l'accès à un bucket.
Créer un bucket WORM
Un bucket WORM garantit que rien d'autre n'écrase les objets et qu'ils sont conservés pendant une période minimale. La journalisation des audits est un exemple de cas d'utilisation d'un bucket WORM.
Pour créer un bucket WORM, procédez comme suit :
- Définissez une durée de conservation lorsque vous créez le bucket. Par exemple, le bucket suivant a une période de conservation de 365 jours. - apiVersion: object.gdc.goog/v1 kind: Bucket metadata: name: foo logging-bucket namespace: foo-service spec: description: "Audit logs for foo" storageClass: Standard bucketPolicy : lockingPolicy : defaultObjectRetentionDays: 365
- Attribuez le rôle - project-bucket-object-viewerà tous les utilisateurs qui ont besoin d'un accès en lecture seule :- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: foo-service name: object-readonly-access roleRef: kind: Role name: project-bucket-object-viewer apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount namespace: foo-service name: foo-log-processor - kind: User name: bob@example.com apiGroup: rbac.authorization.k8s.io
- Attribuez le rôle - project-bucket-object-adminaux utilisateurs qui doivent écrire du contenu dans le bucket :- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: namespace: foo-service name: object-write-access roleRef: kind: Role name: project-bucket-object-viewer apiGroup: rbac.authorization.k8s.io subjects: - kind: ServiceAccount namespace: foo-service name: foo-service-account