Crear segmentos de almacenamiento WORM para proyectos

En esta página se explica cómo crear segmentos WORM de almacenamiento aislado de Google Distributed Cloud (GDC).

Antes de empezar

Un espacio de nombres de proyecto gestiona los recursos de segmentos en el servidor de la API de gestión. Debes tener un proyecto para trabajar con segmentos y objetos.

También debes tener los permisos de segmento adecuados para realizar la siguiente operación. Consulta el artículo Conceder acceso a un segmento.

Crear un segmento WORM

Un segmento WORM garantiza que nada más sobrescriba los objetos y los retiene durante un periodo mínimo. El registro de auditoría es un ejemplo de caso práctico de un segmento WORM.

Sigue estos pasos para crear un segmento WORM:

  1. Define un periodo de retención al crear el segmento. Por ejemplo, el siguiente segmento de ejemplo tiene un periodo de retención de 365 días.

    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. Asigna el rol project-bucket-object-viewer a todos los usuarios que necesiten acceso de solo lectura:

    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. Asigna el rol project-bucket-object-admin a los usuarios que necesiten escribir contenido en el segmento:

    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