Crie contentores WORM de armazenamento para projetos

Esta página mostra como criar contentores WORM de armazenamento isolado do Google Distributed Cloud (GDC).

Antes de começar

Um espaço de nomes do projeto gere os recursos de contentores no servidor da API Management. Tem de ter um projeto para trabalhar com contentores e objetos.

Também tem de ter as autorizações de contentor adequadas para realizar a seguinte operação. Consulte o artigo Conceda acesso ao contentor.

Crie um contentor WORM

Um contentor WORM garante que nada mais substitui os objetos e que os retém durante um período mínimo. O registo de auditoria é um exemplo de utilização de um contentor WORM.

Siga os passos seguintes para criar um contentor WORM:

  1. Defina um período de retenção quando criar o contentor. Por exemplo, o seguinte exemplo de contentor tem um período de retenção de 365 dias.

    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
    
  2. Conceda a função de project-bucket-object-viewer a todos os utilizadores que precisam de acesso só de leitura:

    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
    
  3. Conceda a função project-bucket-object-admin aos utilizadores que precisam de escrever conteúdo no contentor:

    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