En este documento, se describe cómo administrar las entradas de registro que generan los recursos que se encuentran en tu Google Cloud organización mediante un receptor agregado que no intercepta.
Puedes configurar un receptor agregado para que intercepte o no, según si deseas controlar qué entradas de registro se pueden consultar o enrutar a través de los receptores en los recursos secundarios. En este instructivo, crearás un receptor agregado que enruta los registros de auditoría de tu organización a un Google Cloud proyecto, que luego enruta los registros de auditoría agregados a un bucket de registros. Para obtener más información, consulta Descripción general de los receptores agregados.
En este instructivo, realizarás los siguientes pasos:
Comenzarás por crear un bucket de registros y un receptor de registros en el Google Cloud proyecto en el que deseas almacenar tus entradas de registro agregadas.
A continuación, crearás un receptor agregado que no intercepta a nivel de la organización para enrutar las entradas de registro al Google Cloud proyecto que contiene el bucket de registros.
Luego, configurarás el acceso de lectura a las vistas de registros en el bucket de registros nuevo.
Por último, consultarás y verás tus entradas de registro desde la página Explorador de registros.
Antes de comenzar
Asegúrate de que se cumpla lo siguiente:
-
Para obtener los permisos que necesitas para configurar un receptor agregado, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu organización:
-
Para crear buckets de registros y receptores en un proyecto:
Escritor de configuración de registros (
roles/logging.configWriter) - tu proyecto -
Para crear un receptor agregado:
Escritor de configuración de registros (
roles/logging.configWriter) - tu organización -
Para otorgar roles a las entidades principales:
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 a través de roles personalizados o cualquier otro rol predefinido.
-
Para crear buckets de registros y receptores en un proyecto:
Escritor de configuración de registros (
- Si usas los Controles del servicio de VPC, debes agregar una 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 Limitaciones.
-
En la Google Cloud consola de, activa Cloud Shell.
En la parte inferior de la Google Cloud consola de, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.
Crea un bucket de registros
Los buckets de registros almacenan las entradas de registro que se enrutan desde otros Google Cloud proyectos, organizaciones o carpetas. Para obtener más información, consulta Configura buckets de registros.
Para crear el bucket de registros en el Google Cloud proyecto al que deseas agregar las entradas de registro, completa los siguientes pasos:
Abre un shell.
Por ejemplo, para usar Cloud Shell, haz lo siguiente:
-
Ve a la Google Cloud consola de:
- En la barra de herramientas, haz clic en terminal Activar Cloud Shell.
-
En el shell, ejecuta el comando
gcloud logging buckets create.Antes de ejecutar el siguiente comando, realiza los siguientes reemplazos:
- BUCKET_NAME: El nombre del bucket de registros.
- LOCATION: La ubicación del bucket de registros. Después de crear tu bucket de registros, no puedes cambiar su ubicación.
- PROJECT_ID: El identificador del proyecto en el que se creará el bucket de registros.
Ejecuta el
gcloud logging buckets createcomando:gcloud logging buckets create BUCKET_NAME \ --location=LOCATION --project=PROJECT_IDVerifica si se creó el bucket de registros:
gcloud logging buckets list --project=PROJECT_IDLa respuesta del comando es una lista de los buckets de registros de tu proyecto.
Los buckets de registros tienen períodos de retención configurables. Si deseas establecer el período de retención de las entradas de registro en tu bucket de registros, usa el comando
gcloud logging buckets update. Por ejemplo, el siguiente comando amplía la retención de las entradas de registro almacenadas en el bucket de registros a 365 días:gcloud logging buckets update BUCKET_NAME \ --location=LOCATION --project=PROJECT_ID \ --retention-days=365Para obtener más información sobre las opciones, consulta
gcloud logging buckets update.
Crea el receptor de registros a nivel de proyecto
Para enrutar las entradas de registro a un bucket de registros, debes crear un receptor. Un receptor incluye un filtro de inclusión, filtros de exclusión y un destino. En este instructivo, configurarás un filtro de inclusión y el destino a tu nuevo bucket de registros. Tu receptor no contiene ningún filtro de exclusión. Para obtener más información sobre los receptores, consulta Enruta registros a destinos admitidos.
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: El nombre del receptor de registros a nivel de proyecto.
SINK_DESTINATION: El bucket de registros al que se enrutan tus entradas de registro. El formato de la ruta de destino para un bucket de registros es el siguiente:
logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAMEPROJECT_ID: El identificador del proyecto en el que se creará el receptor de registros. Configura esta opción en el mismo proyecto en el que creaste el bucket de registros.
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 de registro de auditoría. Si no estableces un filtro, todas las entradas de registro de tu Google Cloud proyecto se enrutan al destino.--description: Usa esta opción para describir el propósito o el caso de uso del receptor.
Ejecuta el
gcloud logging sinks create
comando:
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 las entradas de registro de los recursos que contiene una organización o carpeta a un destino.
En este instructivo, crearás un receptor agregado que no intercepta. Esto significa que cada entrada de registro que enruta el receptor agregado también la enrutan los receptores en el recurso en el que se origina la entrada de registro. Por ejemplo, un registro de auditoría que se origina en un proyecto se enruta a través del receptor agregado y los receptores de ese proyecto. Por lo tanto, es posible que almacenes varias copias de una entrada de registro.
Puedes crear receptores que interceptan. Para obtener más información, consulta Descripción general de los receptores agregados.
Configura el receptor a nivel de la organización
Para crear un receptor agregado que no intercepta y que enruta las entradas de registro a un proyecto, completa los siguientes pasos:
Ejecuta el
gcloud logging sinks createcomando.Antes de ejecutar el siguiente comando, realiza los siguientes reemplazos:
- SINK_NAME: El nombre del receptor de registros. No puedes cambiar el nombre de un receptor después de crearlo.
- PROJECT_ID: El identificador del proyecto que almacena el bucket de registros.
- ORGANIZATION_ID: 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-childrenLa opción
--include-childrenes importante. Esta opción garantiza que se enruten las entradas de registro de todos los Google Cloud proyectos y carpetas de tu organización. Para obtener más información, consulta Recopila y enruta registros a nivel de la organización a destinos compatibles.Verifica si se creó el receptor:
gcloud logging sinks list --organization=ORGANIZATION_IDObtén el nombre de la cuenta de servicio:
gcloud logging sinks describe SINK_NAME --organization=ORGANIZATION_IDEl resultado es similar al siguiente:
writerIdentity: serviceAccount:o1234567890-ORGANIZATION_ID@gcp-sa-logging.iam.gserviceaccount.comCopia el valor del campo
serviceAccounten tu portapapeles.
Otorga acceso al receptor
Después de crear el receptor agregado, debes otorgar permiso para que el receptor escriba entradas de registro en el proyecto que estableciste como destino. Puedes otorgar permiso con la Google Cloud consola o editando la política de Identity and Access Management (IAM), como se describe en Establece permisos de destino.
Para otorgar permiso a tu receptor para escribir entradas de registro, haz lo siguiente:
-
En la Google Cloud consola de, dirígete a la página IAM:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es IAM y administrador.
Selecciona el Google Cloud proyecto que contiene tu bucket de registros.
Haz clic en Otorgar acceso y agrega la cuenta de servicio como una principal nueva. No incluyas el prefijo serviceAccount:.
En el menú Seleccionar un rol, selecciona Escritor de registros.
Haz clic en Guardar.
Genera entradas de registro para ayudar en la verificación del receptor
Para verificar que tu receptor agregado esté configurado de forma correcta, prueba lo siguiente:
Genera entradas de registro de auditoría que se deben enrutar a tu bucket de registros.
Si tienes muchos Google Cloud proyectos en tu organización, entonces es posible que tengas suficiente tráfico de registro de auditoría que no sea necesario crear ninguno para fines de validación. Dirígete al paso siguiente.
De lo contrario, ve a otro proyecto, crea una instancia de VM de Compute Engine y, luego, borra la instancia que creaste. Los registros de auditoría se escriben cuando se crea, inicia y borra una VM.
Sigue el procedimiento de la sección titulada Visualiza registros en la página Explorador de registros para ver tus registros de auditoría. Asegúrate de seleccionar la vista
_AllLogs.
Configura el acceso de lectura a una vista de registros en un bucket de registros
Cuando creas un bucket de registros, Cloud Logging crea automáticamente una
vista de registros llamada _AllLogs.
Esta vista incluye todas las entrada de registro almacenadas en el bucket de registros.
Para restringir una entidad principal para que solo tenga acceso a entradas de registro específicas, crea una vista de registros y, luego, haz una de las siguientes acciones:
Otórgale el rol
roles/logging.viewAccessorjunto con una condición de IAM que restrinja el otorgamiento a la vista de registros.En la política de IAM asociada con la vista de registros, otorga acceso a una entidad principal. Recomendamos este enfoque cuando creas una gran cantidad de vistas de registros.
Para obtener más información sobre estos dos enfoques, consulta Controla el acceso a una vista de registros.
En los siguientes pasos, otorgarás a una entidad principal el rol roles/logging.viewAccessor junto con una condición de IAM que restrinja el otorgamiento a la vista llamada _AllLogs:
-
En la Google Cloud consola de, dirígete a la página IAM:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es IAM y administrador.
Selecciona el Google Cloud proyecto que contiene el bucket de registros.
Haz clic en Agregar.
En el campo Principal nueva, agrega una principal.
En el menú Seleccionar un rol, selecciona Descriptor de acceso de vistas de registro.
Si no agregas una condición a este rol, la entidad principal tendrá acceso a todas las vistas de registros en todos los buckets de registros definidos por el usuario en el Google Cloud proyecto.
Agrega una condición de IAM a la vinculación:
- Haz clic en Agregar condición, ingresa un título y una descripción.
- En el menú Tipo de condición , desplázate hasta Recurso y, luego, selecciona Nombre.
- En el menú Operador, selecciona Finalizar con.
En el campo Valor, ingresa el nombre completo de la vista de registros:
locations/LOCATION/buckets/BUCKET_NAME/views/_AllLogsHaz clic en Guardar para guardar la condición.
Haz clic en Guardar para guardar la vinculación.
Visualiza las entradas de registro en la página Explorador de registros
Para ver las entradas de registro en tu bucket de registros, haz lo siguiente:
-
En la Google Cloud consola de, ve a la Explorador de registros del segmento:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
Selecciona Define mejor el permiso.
En el panel Define mejor el permiso, selecciona Vista de registros.
Selecciona la vista de registros o las vistas de registros cuyas entradas de registro deseas ver. Por ejemplo, para ver todas las entradas de registro, selecciona la vista llamada
_AllLogs.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.