Postura predefinida para Cloud Storage, extendida

En esta página, se describen las políticas preventivas y de detective que se incluyen en la versión v1.0 de la posición predefinida para Cloud Storage, extendida. Esta postura incluye dos conjuntos de políticas:

  • Un conjunto de políticas que incluye políticas de la organización que se aplican a Cloud Storage.

  • Un conjunto de políticas que incluye detectores de Security Health Analytics que se aplican a Cloud Storage.

Puedes usar esta posición predefinida para configurar una posición de seguridad que ayude a proteger Cloud Storage. Si deseas implementar esta posición predefinida, debes personalizar algunas de las políticas para que se apliquen a tu entorno.

Restricciones de las políticas de la organización

En la siguiente tabla, se describen las políticas de la organización que se incluyen en esta postura.

Política Descripción Estándar de cumplimiento
storage.publicAccessPrevention

Esta política evita que los buckets de Cloud Storage estén abiertos al acceso público no autenticado.

El valor es true para evitar el acceso público a los buckets.

Control de NIST SP 800-53: AC-3, AC-17 y AC-20
storage.uniformBucketLevelAccess

Esta política evita que los buckets de Cloud Storage usen LCA por objeto (un sistema independiente de las políticas de IAM) para proporcionar acceso y aplicar coherencia en la administración y la auditoría de accesos.

El valor es true para aplicar el acceso uniforme a nivel de bucket.

Control de NIST SP 800-53: AC-3, AC-17 y AC-20
storage.retentionPolicySeconds

Esta restricción define la duración (en segundos) de la política de retención de los buckets.

Debes configurar este valor cuando adoptas esta posición predefinida.

Control de NIST SP 800-53: SI-12

Detectores de estadísticas de estado de seguridad

En la siguiente tabla, se describen los detectores de Security Health Analytics que se incluyen en la posición predefinida. Para obtener más información sobre estos detectores, consulta Búsquedas de vulnerabilidades.

Nombre del detector Descripción
BUCKET_LOGGING_DISABLED

Este detector verifica si hay un bucket de almacenamiento sin el registro habilitado.

LOCKED_RETENTION_POLICY_NOT_SET

Este detector verifica si la política de retención bloqueada está establecida para los registros.

OBJECT_VERSIONING_DISABLED

Este detector verifica si el control de versiones de objetos está habilitado en los buckets de almacenamiento con receptores.

BUCKET_CMEK_DISABLED

Este detector verifica si los buckets se encriptan con claves de encriptación administradas por el cliente (CMEK).

BUCKET_POLICY_ONLY_DISABLED

Este detector verifica si se configuró el acceso uniforme a nivel de bucket.

PUBLIC_BUCKET_ACL

Este detector verifica si un bucket es de acceso público.

PUBLIC_LOG_BUCKET

Este detector verifica si un bucket con un receptor de registros es de acceso público.

ORG_POLICY_LOCATION_RESTRICTION

Este detector verifica si un recurso de Compute Engine no cumple con la restricción constraints/gcp.resourceLocations.

Definición de YAML

A continuación, se muestra la definición de YAML para la posición predefinida de Cloud Storage.

name: organizations/123/locations/global/postureTemplates/cloud_storage_extended
description: Posture Template to make your Cloud storage workload secure.
revision_id: v.1.0
state: ACTIVE
policy_sets:
- policy_set_id: Cloud storage preventative policy set
  description: 3 org policies that new customers can automatically enable.
  policies:
  - policy_id: Enforce Public Access Prevention
    compliance_standards:
    - standard: NIST SP 800-53
      control: AC-3
    - standard: NIST SP 800-53
      control: AC-17
    - standard: NIST SP 800-53
      control: AC-20
    constraint:
      org_policy_constraint:
        canned_constraint_id: storage.publicAccessPrevention
        policy_rules:
        - enforce: true
    description: This governance policy prevents access to existing and future resources via the public internet by disabling and blocking Access Control Lists (ACLs) and IAM permissions that grant access to allUsers and allAuthenticatedUsers.
  - policy_id: Enforce uniform bucket-level access
    compliance_standards:
    - standard: NIST SP 800-53
      control: AC-3
    - standard: NIST SP 800-53
      control: AC-17
    - standard: NIST SP 800-53
      control: AC-20
    constraint:
      org_policy_constraint:
        canned_constraint_id: storage.uniformBucketLevelAccess
        policy_rules:
        - enforce: true
    description: This boolean constraint requires buckets to use uniform bucket-level access where this constraint is set to TRUE.
  - policy_id: Retention policy duration in seconds
    compliance_standards:
    - standard: NIST SP 800-53
      control: SI-12
    constraint:
      org_policy_constraint:
        canned_constraint_id: storage.retentionPolicySeconds
        policy_rules:
        - enforce: true
    description: This list constraint defines the set of durations for retention policies that can be set on Cloud Storage buckets. By default, if no organization policy is specified, a Cloud Storage bucket can have a retention policy of any duration. The list of allowed durations must be specified as a positive integer value greater than zero, representing the retention policy in seconds. Any insert, update, or patch operation on a bucket in the organization resource must have a retention policy duration that matches the constraint. Enforcement of this constraint is not retroactive. When a new organization policy is enforced, the retention policy of existing buckets remains unchanged and valid.
- policy_set_id: Cloud storage detective policy set
  description: 8 SHA modules that new customers can automatically enable.
  policies:
  - policy_id: Bucket logging disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: BUCKET_LOGGING_DISABLED
  - policy_id: Locked retention policy not set
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: LOCKED_RETENTION_POLICY_NOT_SET
  - policy_id: Object versioning disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: OBJECT_VERSIONING_DISABLED
  - policy_id: Bucket CMEK disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: BUCKET_CMEK_DISABLED
  - policy_id: Bucket policy only disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: BUCKET_POLICY_ONLY_DISABLED
  - policy_id: Public bucket ACL
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: PUBLIC_BUCKET_ACL
  - policy_id: Public log bucket
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: PUBLIC_LOG_BUCKET
  - policy_id: Org policy location restriction
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: ORG_POLICY_LOCATION_RESTRICTION

¿Qué sigue?