Establece la configuración predeterminada para las organizaciones y las carpetas

En este documento, se describe cómo configurar la configuración predeterminada de logging con la CLI de Google Cloud. La configuración predeterminada, que se puede aplicar a una organización o a una carpeta, puede determinar lo siguiente:

  • Si se requiere una clave de encriptación administrada por el cliente (CMEK) para los buckets de registros nuevos
  • La ubicación de almacenamiento para los nuevos buckets _Default y _Required, y para las consultas que se ejecutan en las páginas Explorador de registros o Estadísticas de registros.
  • Indica si el receptor _Default está habilitado o inhabilitado.

  • Es el filtro que se aplica al sumidero _Default de recursos nuevos.

Descripción general

El recurso de organización se encuentra en el nivel más alto de la jerarquía de recursos de Google Cloud. El recurso de organización es el superior de estos recursos secundarios: proyectos, carpetas, cuentas de facturación de Google Cloud y, en el caso de los registros, buckets de registros.

Puedes configurar el registro para usar la configuración predeterminada de una organización de Google Cloud y de las carpetas. Cuando creas recursos nuevos, estos heredan la configuración predeterminada de su elemento superior.

Cloud Logging admite la siguiente configuración predeterminada:

  • Si los buckets de registro nuevos de un recurso se encriptarán con una clave administrada por el cliente y, de ser así, la clave predeterminada de Cloud KMS que se usará para la encriptación

  • Es la ubicación de almacenamiento de los nuevos buckets de registros _Default y _Required que crean los recursos secundarios y de las consultas que guardan las páginas del Explorador de registros o Log Analytics. Si configuras la ubicación de almacenamiento, puedes controlar dónde se almacenan tus registros.

    Si configuras una ubicación de almacenamiento predeterminada para un recurso y no configuras la CMK para ese recurso, los buckets de registro nuevos en el recurso no requieren la CMK.

  • Indica si el sumidero de registros _Default está habilitado o inhabilitado para los proyectos nuevos en el recurso.

  • Los filtros de inclusión o exclusión que se aplican a todos los nuevos consumidores de _Default en los recursos secundarios

Configuraciones de ejemplo:

  • Configuras una ubicación de almacenamiento predeterminada para una organización. En el caso de los proyectos nuevos de la organización, los buckets de registro _Default y _Required se crean en la ubicación especificada. Además, las consultas que guardan las páginas del Explorador de registros o Análisis de registros se almacenan en la ubicación especificada. Estas consultas incluyen las consultas recientes que se guardan automáticamente después de ejecutarse y las que guardan los miembros del proyecto de Google Cloud.
  • Puedes configurar una ubicación de almacenamiento predeterminada para una organización y una ubicación de almacenamiento predeterminada para cada carpeta de esa organización. En el caso de los proyectos nuevos que se encuentran en una carpeta, los buckets _Default y _Required se crean en la ubicación especificada por la configuración de la carpeta. En el caso de los proyectos que no están en una carpeta, sus buckets _Default y _Required se crean en la ubicación que especifica la configuración de la organización.

  • Supongamos que configuras la CMEK para una organización y que, para la carpeta llamada Non-CMEK, solo estableces la ubicación de almacenamiento predeterminada. Si creas un proyecto que no está en la carpeta llamada Non-CMEK, los buckets _Default y _Required se crean en la misma ubicación que la clave de Cloud Key Management Service, y esa clave encripta estos buckets de registro. Sin embargo, si creas un proyecto nuevo en la carpeta llamada Non-CMEK, sus buckets de registro se crean en las ubicaciones especificadas por la configuración de esa carpeta, y esos buckets de registro no están encriptados por CMEK.

  • Configuras un filtro de exclusión que se aplica a los nuevos receptores de _Default a nivel de la organización. El filtro excluye que los registros de auditoría de acceso a los datos se enruten a través del receptor _Default en todos los recursos secundarios, lo que evita que los registros de auditoría de acceso a los datos se almacenen en el bucket _Default.

Antes de comenzar

Este documento no contiene información para configurar CMEK como configuración predeterminada de Logging. Para obtener información sobre ese tema, consulta Cómo configurar CMEK para el registro.

Para comenzar a configurar la configuración predeterminada de Logging, haz lo siguiente:

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Asegúrate de que tu rol de Identity and Access Management en la organización o la carpeta cuya configuración predeterminada deseas configurar incluya el siguiente permiso de Cloud Logging:

    • logging.settings.get
    • logging.settings.update
  3. Identifica la ubicación en la que deseas almacenar tus registros y consultas. Para obtener una lista de las ubicaciones de almacenamiento compatibles, consulta Regiones compatibles.

Consulta la configuración predeterminada de Logging

Para ver la configuración predeterminada de Registro, incluida la ubicación de almacenamiento predeterminada, usa el comando gcloud logging settings describe:

CARPETA

 gcloud logging settings describe --folder=FOLDER_ID

Antes de ejecutar el comando anterior, realiza el siguiente reemplazo:

  • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.

ORGANIZACIÓN

gcloud logging settings describe --organization=ORGANIZATION_ID

Antes de ejecutar el comando anterior, realiza el siguiente reemplazo:

  • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.

El comando anterior muestra información sobre la configuración predeterminada. Por ejemplo, a continuación, se muestra la configuración predeterminada de una organización en particular:

name: organizations/ORGANIZATION_ID/settings
kmsKeyName: KMS_KEY_NAME
kmsServiceAccountId: SERVICE_ACCT_NAME@gcp-sa-logging.iam.gserviceaccount.com
storageLocation: europe-west1
disableDefaultSink: false

El valor de SERVICE_ACCT_NAME puede tener el formato cmek-12345 o service-12345@.... Si no puedes usar Google Cloud CLI, ejecuta el método getSettings de la API de Cloud Logging.

Cómo establecer la ubicación de almacenamiento predeterminada

Los buckets de registros son los contenedores en tus proyectos, cuentas de facturación, carpetas y organizaciones de Google Cloud que almacenan y organizan los datos de registros. Para cada proyecto, cuenta de facturación, carpeta y organización de Google Cloud, Logging crea automáticamente dos buckets de registros: _Required y _Default, que se almacenan automáticamente en la ubicación global.

Cuando estableces la ubicación de almacenamiento predeterminada para una organización o carpeta, especificas dónde se crean los nuevos buckets de registros _Required y _Default y dónde se almacenan las consultas que ejecutas en las páginas del Explorador de registros y Log Analytics. La configuración de la ubicación de almacenamiento predeterminada no afecta a la ubicación de los buckets de registro existentes. Del mismo modo, para las consultas que se guardaron, no se cambia su ubicación de almacenamiento.

Después de configurar la ubicación de almacenamiento predeterminada de una organización o una carpeta, sucede lo siguiente:

  • En el caso de los recursos secundarios nuevos creados en la organización o la carpeta, sus buckets _Required y _Default heredan la ubicación de almacenamiento predeterminada.
  • Las consultas nuevas que ejecutas en las páginas del Explorador de registros o Estadísticas de registros se guardan en la ubicación de almacenamiento predeterminada. Esta ubicación también se aplica a las consultas recientes que se guardan automáticamente.

La ubicación de almacenamiento predeterminada de Cloud Logging no se aplica a los buckets de registros definidos por el usuario ni a las consultas guardadas con la API de Logging.

Configura las políticas de la organización

El registro admite políticas de la organización que pueden restringir dónde se pueden almacenar los datos. Si existe una política de este tipo para tu organización, solo puedes crear buckets de registros en ubicaciones que permita la política.

Cuando existe una política de la organización que especifica una restricción de ubicación, los valores de la política para la restricción deben incluir la ubicación especificada en la configuración predeterminada de Logging. Además, si planeas modificar la configuración predeterminada, antes de actualizarla, revisa y, si es necesario, actualiza las políticas de la organización.

Para ver o actualizar las políticas de la organización, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Políticas de la organización:

    Ve a Políticas de la organización.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es IAM y administrador.

  2. Selecciona tu organización.

  3. Consulta la restricción con el ID constraints/gcp.resourceLocations y, si es necesario, actualízala. Si no se configura esta restricción, no se requiere una actualización.

    Para obtener información sobre cómo ver restricciones específicas y cómo editarlas, consulta Crea y edita políticas.

Configura la ubicación de almacenamiento predeterminada para Logging

Para configurar la ubicación de almacenamiento predeterminada de Cloud Logging, ejecuta el comando gcloud logging settings update y, luego, incluye la marca --storage-location:

CARPETA

gcloud logging settings update --folder=FOLDER_ID--storage-location=LOCATION

Antes de ejecutar el comando anterior, realiza los siguientes reemplazos:

  • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.
  • LOCATION: Es la ubicación en la que se crean los nuevos buckets de registros _Default y _Required, y donde se almacenan las consultas. Para obtener una lista de las ubicaciones compatibles, consulta Regiones compatibles.

ORGANIZACIÓN

gcloud logging settings update --organization=ORGANIZATION_ID --storage-location=LOCATION

Antes de ejecutar el comando anterior, realiza los siguientes reemplazos:

  • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.
  • LOCATION: Es la ubicación en la que se crean los nuevos buckets de registros _Default y _Required, y donde se almacenan las consultas. Para obtener una lista de las ubicaciones compatibles, consulta Regiones compatibles.

Si no puedes usar Google Cloud CLI, ejecuta el método updateSettings de la API de Cloud Logging.

Para obtener información sobre cómo resolver errores cuando se actualiza la ubicación de almacenamiento predeterminada, consulta Soluciona problemas relacionados con la configuración de la ubicación de recursos predeterminada.

Configura el receptor _Default

Logging proporciona un receptor _Default predefinido para cada proyecto, cuenta de facturación, carpeta y recurso de organización de Google Cloud. Cualquier registro que se genere en el recurso que coincida con el filtro de inclusión y que no se excluya se enruta al bucket _Default predefinido del recurso con el nombre correspondiente.

Puedes configurar la configuración predeterminada del sumidero _Default para tu organización y carpetas con las siguientes opciones:

  • Puedes inhabilitar la creación de un receptor de _Default para los recursos secundarios nuevos.

  • Puedes configurar un filtro de inclusión o varios filtros de exclusión que se apliquen a los receptores de _Default de proyectos nuevos.

Inhabilita el receptor _Default

Puedes inhabilitar los sinks de _Default para todos los recursos nuevos en una organización o carpeta. Inhabilitar los sinks de _Default evita que los registros se almacenen en el bucket de _Default del recurso. Si dejas de almacenar registros en el bucket _Default de un recurso, los registros que se habrían enrutado a ese bucket se excluyen del almacenamiento en Logging, a menos que esos registros se incluyan de forma explícita en otro receptor definido por el usuario para ese recurso.

Para inhabilitar los receptores _Default de un recurso y cualquiera de sus recursos secundarios, ejecuta el siguiente comando gcloud logging settings update:

CARPETA

gcloud logging settings update --folder=FOLDER_ID--disable-default-sink

Antes de ejecutar el comando anterior, realiza el siguiente reemplazo:

  • FOLDER_ID: Es el identificador numérico único de la carpeta. Para obtener información sobre cómo usar las carpetas, consulta Crea y administra carpetas.

ORGANIZACIÓN

gcloud logging settings update --organization=ORGANIZATION_ID --disable-default-sink

Antes de ejecutar el comando anterior, realiza el siguiente reemplazo:

  • ORGANIZATION_ID: Es el identificador numérico único de la organización. Para obtener información sobre cómo obtener este identificador, consulta Obtén el ID de tu organización.

La marca disable-default-sink solo se aplica al receptor _Default que enruta los registros al bucket _Default.

Para volver a habilitar los sumideros _Default, ejecuta el siguiente comando gcloud logging settings update:

CARPETA

gcloud logging settings update --folder=FOLDER_ID--no-disable-default-sink

ORGANIZACIÓN

gcloud logging settings update --organization=ORGANIZATION_ID --no-disable-default-sink

Configura el filtro predeterminado de los receptores _Default

El receptor de _Default predefinido enruta todas las entradas de registro que coincidan con los criterios del receptor al bucket de _Default correspondiente. Puedes enviar un comando de la API de Cloud Logging para anular el filtro de inclusión integrado en el receptor _Default o para agregar un filtro. El filtro de exclusión integrado para el receptor _Default está vacío. Sin embargo, el comando de la API también te permite agregar filtros de exclusión.

Para especificar un filtro de inclusión o de exclusión que se aplique a todos los receptores _Default de recursos nuevos en una organización o carpeta, ejecuta el método updateSettings de la API de Cloud Logging y especifica el objeto defaultSinkConfig.

Puedes ejecutar el método updateSettings con el widget del Explorador de APIs en la página de referencia del método. En el siguiente ejemplo, se muestran parámetros de muestra:

  • Nombre (URL): organizations/ORGANIZATION_ID/settings
  • updateMask: "default_sink_config"
  • Cuerpo de la solicitud, que contiene una instancia de Settings:

    "defaultSinkConfig": {
      {
      "filter": "NOT LOG_ID(\"externalaudit.googleapis.com/activity\") "
      "AND NOT LOG_ID(\"cloudaudit.googleapis.com/system_event\") "
      "AND NOT LOG_ID(\"externalaudit.googleapis.com/system_event\") "
      "AND NOT LOG_ID(\"cloudaudit.googleapis.com/access_transparency\") "
      "AND NOT LOG_ID(\"externalaudit.googleapis.com/access_transparency\") ",
      "exclusions": [
         {
            "name": "exclude-data-access",
            "description": "Prevents Data Access audit logs from being routed",
            "filter": "log_id(\"cloudaudit.googleapis.com/data_access\")",
         }
      ],
      "mode": OVERWRITE
      }
    }
    

El filtro de inclusión integrado para el sink _Default incluye la sentencia AND NOT LOG_ID("externalaudit.googleapis.com/activity"), que evita que los registros de auditoría de la actividad del administrador se enruten al bucket de registros _Default. En el ejemplo anterior, se cambia el filtro de inclusión para que los registros de auditoría de actividad del administrador se enruten al bucket de registros _Default. El ejemplo también agrega un filtro de exclusión que evita que los registros de auditoría de acceso a los datos se enruten al bucket _Default. En el ejemplo anterior, el filtro de exclusión se llama exclude-data-access.

Soluciona problemas de errores de configuración

Para obtener información sobre la solución de problemas, consulta Soluciona problemas de CMEK y errores de configuración predeterminada.