Agrega y almacena los registros de tu organización

En este documento, se describe cómo administrar las entradas de registro que generan los recursos contienen en tu organización de Google Cloud con un sumidero agregado que no intercepta.

Puede configurar un receptor agregado para que intercepte o no intercepte, dependiendo de si deseas controlar las entradas de registro que se pueden consultar o se enrutan a través de receptores en recursos secundarios. En este instructivo, crearás un receptor agregado que enruta los registros de auditoría de tu organización a un proyecto de Google Cloud, que luego enruta el los registros de auditoría agregados a un bucket de registros.

Para obtener más información sobre los receptores agregados, consulta Recopila y enruta registros a nivel de la organización y la carpeta a destinos compatibles.

En este instructivo, realizarás los siguientes pasos:

  1. Comenzarás por crear un bucket de registros y un receptor de registros en la Es el proyecto de Google Cloud en el que quieres almacenar tus entradas de registro agregadas.

  2. A continuación, crearás un receptor agregado no interceptor a nivel de la organización para enrutar las entradas de registro al proyecto de Google Cloud que contiene los bucket de registros.

  3. Luego, configura el acceso de lectura a las vistas de registro en el bucket de registros nuevo.

  4. Por último, puedes consultar y ver tus entradas de registro desde la página Explorador de registros.

Antes de comenzar

Asegúrate de que se cumpla lo siguiente:

  • A fin de obtener los permisos que necesitas para configurar un receptor agregado, solicita a tu administrador que te otorgue el los siguientes roles de IAM en tu organización:

    • Para crear buckets y receptores de registros en un proyecto, sigue estos pasos: Escritor de configuración de registros (roles/logging.configWriter): tu proyecto
    • Para crear un receptor agregado, sigue estos pasos: Escritor de configuración de registros (roles/logging.configWriter): Tu organización
    • Para otorgar roles a las principales, sigue estos pasos: Propietario (roles/owner): tu proyecto

    Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

    También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

  • Si usas los Controles del servicio de VPC, debes agregar un regla de entrada al perímetro de servicio. Para obtener más información sobre las limitaciones de los Controles del servicio de VPC, consulta Sinks agregados y limitaciones de los Controles del servicio de VPC.
  • 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.

Crea un bucket de registros

Los buckets de registros almacenan las entradas de registro que se enrutan desde otras proyectos, carpetas u organizaciones de Google Cloud. Para obtener más información, consulta Configura buckets de registros.

Para crear el bucket de registros en el proyecto de Google Cloud al que deseas agregar las entradas de registro, completa los siguientes pasos:

  1. Ve a la consola de Google Cloud:

    Ir a la consola de Google Cloud

  2. En una terminal de Cloud Shell, ejecuta el comando gcloud logging buckets create.

    Antes de ejecutar el siguiente comando, haz lo siguiente: reemplazos:

    • BUCKET_NAME: Es el nombre del bucket de registros.
    • LOCATION: Es la ubicación del bucket de registros. Después de crear tu bucket de registro, no puedes cambiar su ubicación.
    • PROJECT_ID: Es el identificador del proyecto en el que se creará el elemento. bucket de registros.

    Ejecuta el comando gcloud logging buckets create:

     gcloud logging buckets create BUCKET_NAME \
       --location=LOCATION --project=PROJECT_ID
    
  3. Verifica que se haya creado el bucket de registros:

    gcloud logging buckets list --project=PROJECT_ID
    

    La respuesta del comando es una lista de los buckets de registro de tu proyecto.

  4. Los buckets de registros tienen períodos de retención configurables. Si quieres establecer el período de retención de las entradas de registro en tu bucket de registros y, luego, usar el comando gcloud logging buckets update Por ejemplo, los siguientes extiende la retención de las entradas de registro almacenadas bucket de registros en 365 días:

    gcloud logging buckets update BUCKET_NAME \
       --location=LOCATION --project=PROJECT_ID \
       --retention-days=365
    

    Para obtener más información sobre las opciones, consulta gcloud logging buckets update.

Crea el receptor de registros a nivel del proyecto

Para enrutar las entradas de registro a un bucket de registros, debes crear un receptor. Un receptor incluye un filtros de inclusión, filtros de exclusión y un destino. En este instructivo, configurarás un filtro de inclusión y el destino para tu nuevo bucket de registros. Tu sink no contiene ningún filtro de exclusión. Para obtener más información sobre los receptores, consulta Enruta registros a destinos compatibles.

Para crear un receptor que enrute las entradas de registro al bucket de registros que acabas de crear, Ejecuta el comando gcloud logging sinks create.

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

  • PROJECT_LEVEL_SINK_NAME: Es el nombre del nivel de proyecto. receptor de registros.
  • SINK_DESTINATION: El bucket de registros en el que se enrutan tus entradas de registro. El formato de la ruta de destino de un bucket de registro es el siguiente:

    logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
    
  • PROJECT_ID: Es el identificador del proyecto en el que se creará el elemento. receptor de registros. Establece esta opción en el mismo proyecto en el que creaste el registro. bucket.

  • Incluye las siguientes opciones:

    • --log-filter: Usa esta opción para establecer un filtro que coincida con las entradas de registro que deseas incluir en tu receptor. En este instructivo, el filtro está configurado para seleccionar todas las entradas del registro de auditoría. Si no configuras un filtro, todas las entradas de registro de tu proyecto de Google Cloud se enrutan al destino.
    • --description: Usa esta opción para describir el propósito o el caso de uso del sumidero.

Ejecuta el gcloud logging sinks create :

gcloud logging sinks create PROJECT_LEVEL_SINK_NAME SINK_DESTINATION
--project=PROJECT_ID
--log-filter='logName:cloudaudit.googleapis.com' \
--description="Audit logs from my organization" \

Crea el receptor agregado

Los receptores agregados combinan y enrutan entradas de registro de los recursos contenidos por de una organización o carpeta a un destino.

En este instructivo, crearás un sumidero agregado que no intercepte. Esto significa que cada entrada de registro que enruta el receptor agregado también la enrutan los receptores del recurso en el que se origina la entrada de registro. Por ejemplo, un el registro de auditoría que se origina en un proyecto se enruta a través del receptor agregado de los receptores en ese proyecto. Por lo tanto, es posible almacenar varias copias de una entrada de registro.

Puedes crear sumideros de intercepción. Para obtener más información, consulta Recopila y enruta registros a nivel de la organización y la carpeta a destinos compatibles.

Configura el receptor a nivel de la organización

Para crear un receptor agregado que no intercepte y que enrute el registro entradas a un proyecto, completa los siguientes pasos:

  1. Ejecuta el comando gcloud logging sinks create:

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

    • SINK_NAME: Es el nombre del receptor de registros. No puedes cambiar el nombre de un sumidero después de crearlo.
    • PROJECT_ID: Es el identificador del proyecto que almacena el bucket de registros.
    • ORGANIZATION_ID: Es el identificador de la organización.

    Ejecuta el comando gcloud logging sinks create:

    gcloud logging sinks create SINK_NAME \
    logging.googleapis.com/projects/PROJECT_ID  \
      --log-filter='logName:cloudaudit.googleapis.com' \
      --description="Audit logs from my organization" \
      --organization=ORGANIZATION_ID \
      --include-children
    

    La opción --include-children es importante. Esta opción garantiza que las entradas de registro de todos los Se enrutan los proyectos y las carpetas de Google Cloud dentro de tu organización. Para obtener más información, consulta Recopila y enruta registros a nivel de la organización a destinos compatibles.

  2. Verifica que se haya creado el receptor:

    gcloud logging sinks list --organization=ORGANIZATION_ID
    
  3. Obtén el nombre de la cuenta de servicio:

    gcloud logging sinks describe SINK_NAME --organization=ORGANIZATION_ID
    

    El resultado es similar al siguiente:

    writerIdentity: serviceAccount:o1234567890-ORGANIZATION_ID@gcp-sa-logging.iam.gserviceaccount.com
    
  4. Copia el valor del campo serviceAccount en el portapapeles.

Otorga acceso al receptor

Después de crear el receptor agregado, debes otorgarle permiso para escribir entradas de registro en el proyecto que estableciste como destino. Puedes otorgar permiso con la consola de Google Cloud o editando la política de Identity and Access Management (IAM), como se describe en Cómo configurar permisos de destino.

Si deseas otorgar permiso a tu receptor para que escriba entradas de registro, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página IAM:

    Ir a IAM

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

  2. Selecciona el proyecto de Google Cloud que contiene tu bucket de registros.

  3. Haz clic en Otorgar acceso y agrega la cuenta de servicio como principal nueva. No incluyas Incluye el prefijo serviceAccount:.

  4. En el menú Selecciona un rol, elige Escritor de registros.

  5. Haz clic en Guardar.

Genera entradas de registro para ayudar en la verificación del receptor

Para verificar que tu receptor agregado esté configurado correctamente, prueba el lo siguiente:

  1. Genera entradas de registro de auditoría que se deben enrutar a tu bucket de registro.

    • Si tienes muchos proyectos de Google Cloud en tu organización, podrías tener suficiente tráfico de registro de auditoría que no crear cualquiera con fines de validación. Dirígete al paso siguiente.

    • De lo contrario, ve a un proyecto diferente y crea una VM de Compute Engine y, luego, borrarás la instancia que creaste. Los registros de auditoría se escriben cuando se crea, inicia y borra una VM.

  2. Sigue el procedimiento que se indica en la sección Ver registros en la página Explorador de registros para ver los registros de auditoría. Asegúrate de seleccionar la vista _AllLogs.

Configura el acceso de lectura a una vista de registro en un bucket de registros

Cuando creas un bucket de registros, Cloud Logging crea automáticamente un vista de registro llamada _AllLogs. Esta vista incluye cada entrada de registro almacenada en el bucket de registro.

Para restringir a un principal para que solo tenga acceso a entradas de registro específicas, crea una vista de registro y, luego, haz una de las siguientes acciones:

  • Otórgale la función de roles/logging.viewAccessor junto con un Condición de IAM que restringe el otorgamiento a la vista de registro.

  • En la política de IAM asociada con la vista de registros, otorga acceso principal. Recomendamos este enfoque cuando creas una gran cantidad de vistas de registro.

Para obtener más información sobre estos dos enfoques, consulta Controla el acceso a una vista de registro.

En los siguientes pasos, le otorgas a una principal el rol de roles/logging.viewAccessor junto con una condición de IAM que restrinja la concesión a la vista denominada _AllLogs:

  1. En la consola de Google Cloud, ve a la página IAM:

    Ir a IAM

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

  2. Selecciona el proyecto de Google Cloud que contiene el bucket de registros.

  3. Haga clic en Agregar.

  4. En el campo Principal nueva, agrega una principal.

  5. En el menú Selecciona un rol, selecciona Acceso de vistas de registros.

    Si no agregas una condición a este rol, entonces la principal tiene acceso a todas las vistas de registro en todos los buckets de registros definidos por el usuario en el proyecto de Google Cloud.

  6. Agrega una condición de IAM a la vinculación:

    1. Haz clic en Agregar condición y, luego, ingresa un título y una descripción.
    2. En el menú Tipo de condición, desplázate hasta Recurso y, luego, selecciona Nombre.
    3. En el menú Operador (Operator), selecciona Termina con (Ends with).
    4. En el campo Valor, ingresa el nombre completo de la vista de registro:

      locations/LOCATION/buckets/BUCKET_NAME/views/_AllLogs
      
    5. Haz clic en Guardar para guardar la condición.

  7. Haz clic en Guardar para guardar la vinculación.

Visualiza las entradas de registro en la página del Explorador de registros

Para ver las entradas de registro en tu bucket de registro, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Explorador de registros.

    Ir al Explorador de registros

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

  2. Selecciona Define mejor el permiso.

  3. En el panel Definir mejor el permiso, selecciona Vista de registro.

  4. Selecciona las vistas de registro cuyas entradas deseas ver. Por ejemplo, para ver todas las entradas de registro, selecciona la vista _AllLogs.

  5. Haz clic en Aplicar.

    El explorador de registros se actualiza para mostrar las entradas de registro de tu bucket de registros. Para obtener información sobre el uso del Explorador de registros, consulta Usa el Explorador de registros.