Nota: La transmisión de registros de auditoría se encuentra actualmente en beta para GitHub Enterprise Server y está sujeta a cambios.
Acerca de la transmisión de bitácoras de auditoría
Para ayudar a proteger la propiedad intelectual y mantener el cumplimiento de su organización, puede usar streaming para conservar copias de los datos del registro de auditoría y supervisar: * Acceso a la configuración de la organización o el repositorio
- Cambios en los permisos
- Usuarios agregados o quitados de una organización, un repositorio o un equipo
- Usuarios ascendidos a administradores
- Cambios a los permisos de una GitHub App
Los beneficios de transmitir datos de auditoría incluyen:
- Exploración de datos. Puedes examinar los eventos transmitidos utilizando tu herramienta preferida para consultar cantidades grandes de datos. La transmisión contiene tanto los eventos de auditoría como los de Git a lo largo de toda la cuenta empresarial.
- Retención de datos. Puede mantener los registros de auditoría exportados y los datos de eventos de Git siempre que sea necesario.
Los propietarios de la empresa pueden configurar o eliminar una secuencia en cualquier momento. La transmisión exporta los datos de eventos de Git y auditoría de todas las organizaciones en tu empresa.
Nota: Todos los registros de auditoría se transmiten en formato JSON.
Configurar la transmisión de bitácoras de auditoría
Puedes configurar la transmisión de bitácoras de auditoría en GitHub Enterprise Server si sigues las instrucciones para tu proveedor.
Configurar la transmisión para Amazon S3
Para transmitir bitácoras de auditoría a la terminal de Amazon S3, debes tener un bucket y llaves de acceso. Para obtener más información, consulta Creación, configuración y trabajo con buckets de Amazon S3 en la documentación de AWS. Asegúrate de bloquear el acceso público al bucket para proteger la información de tu bitácora de auditoría.
Para configurar la transmisión de bitácora de auditoría desde GitHub, necesitarás:
- El nombrede tu bucket de Amazon S3
- Tu ID de llave de acceso de AWS
- Tu llave de secreto de AWS
Para obtener información sobre cómo crear o acceder al id. clave de acceso y la clave secreta, vea Comprender y obtener las credenciales de AWS en la documentación de AWS.
-
En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa.
1. En la barra lateral de la cuenta de empresa, haz clic en Configuración. 1. En " Configuración", haz clic en Registro de auditoría. -
En "Registro de auditoría", haz clic en Streaming de registros. 1. Selecciona la lista desplegable Configurar secuencia y haz clic en Amazon S3.
-
Configura los valores de transmisión.
- En "Cubo", escribe el nombre del cubo al que quieres transmitir. Por ejemplo,
auditlog-streaming-test
. - En "Id. de clave de acceso", escribe el identificador de la clave de acceso. Por ejemplo,
ABCAIOSFODNN7EXAMPLE1
. - En "Clave secreta", escribe la clave secreta. Por ejemplo,
aBcJalrXUtnWXYZ/A1MDENG/zPxRfiCYEXAMPLEKEY
.
- En "Cubo", escribe el nombre del cubo al que quieres transmitir. Por ejemplo,
-
Para comprobar que GitHub se puede conectar al punto de conexión de Amazon S3 y puede escribir en él, haz clic en Comprobar punto de conexión.
1. Después de comprobar correctamente el punto de conexión, haga clic en Save.
Integración con AWS CloudTrail Lake
Puedes consolidar los registros de auditoría a partir de GitHub Enterprise Server con registros de actividad de AWS mediante la integración del streaming de registros de auditoría en S3 con AWS CloudTrail Lake. Para más información, consulta la documentación de AWS CloudTrail o el registro de auditoría de GitHub en CloudTrail Open Audit en el aws-samples/aws-cloudtrail-lake-github-audit-log
repositorio.
Configurar la transmisión hacia Azure Blob Storage
Antes de configurar una transmisión en GitHub, primero debes haber creado una cuenta de almacenamiento y un contenedor en Microsoft Azure. Para obtener más información, vea la documentación de Microsoft "Introducción a Azure Blob Storage".
Para configurar la transmisión en GitHub, necesitarás la URL de un token SAS.
En Microsoft Azure Portal:
- En la página principal, haga clic en Cuentas de almacenamiento.
- En "Nombre", haz clic en el nombre de la cuenta de almacenamiento que quieres usar.
- En "Almacenamiento de datos", haz clic en Contenedores.
- Haz clic en el nombre del contenedor que quieres utilizar.
- En la barra lateral izquierda, en "Configuración", haz clic en Tokens de acceso compartido.
- Selecciona el menú desplegable Permisos, selecciona
Create
yWrite
, y anula la selección de todas las demás opciones. - Configura una fecha de vencimiento que cumpla con tu política de rotación de secretos.
- Haga clic en Generar URL y token de SAS.
- Copie el valor del campo URL de SAS de blob que se muestra. Utilizarás esta URL en GitHub.
En GitHub : 1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa.
-
En "Registro de auditoría", haz clic en Streaming de registros.
-
Haga clic en Configurar secuencia y seleccione Azure Blob Storage.
-
En la página de configuración, ingresa la URL de SAS del blob que copiaste en Azure. El campo Contenedor se rellena automáticamente en función de la dirección URL.
-
Haga clic en Check endpoint (Comprobar punto de conexión) para comprobar que GitHub puede conectarse y escribir en el punto de conexión de Azure Blob Storage.
-
Después de comprobar correctamente el punto de conexión, haga clic en Save.
Configurar la transmisión hacia Azure Event Hubs
Antes de configurar una transmisión en GitHub, primero debes tener un espacio designador de nombre para concentradores de eventos en Microsoft Azure. Posteriormente, debes crear una instancia de concentrador de eventos dentro del designador de nombre. Necesitarás los detalles de esta instancia de concentrador de eventos cuando configures la transmisión. Para obtener más información, vea la documentación de Microsoft "Inicio rápido: Creación de un centro de eventos mediante Azure Portal".
Necesitas dos partes de información sobre tu concentrador de eventos: su nombre de instancia y la secuencia de conexión.
En Microsoft Azure Portal:
-
En la parte superior de la página, junto a "Microsoft Azure", usa el cuadro de búsqueda para buscar "Event Hubs".
-
Seleccione Centro de eventos. Se listarán los nombres de tus concentradores de eventos.
-
Haz una nota del nombre del concentrador de eventos al cual quieras transmitir.
-
Haz clic en el concentrador de eventos requerido. En el menú de la izquierda, seleccione Directivas de acceso compartido.
-
Selecciona las políticas de acceso compartido de la lista de políticas o crea una nueva.
-
Haga clic en el botón situado a la derecha del campo Connection string-primary key (Clave principal de cadena de conexión) para copiar la cadena de conexión.
En GitHub : 1. En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa.
-
En "Registro de auditoría", haz clic en Streaming de registros.
-
Haga clic en Configurar secuencia y seleccione Azure Event Hubs.
-
En la página de configuración, ingresa:
- El nombre de la instancia de Azure Event Hubs.
- La cadena de conexión.
-
Haga clic en Check endpoint (Comprobar punto de conexión) para comprobar que GitHub puede conectarse y escribir en el punto de conexión de Azure Event Hubs.
-
Después de comprobar correctamente el punto de conexión, haga clic en Save.
Configurar la transmisión para Google Cloud Storage
Para configurar la transmisión al Almacenamiento de Google Cloud, debes crear una cuenta de servicio en Google Cloud con las credenciales y permisos adecuados y luego configurar la transmisión de bitácoras de auditoría en GitHub Enterprise Server utilizando las credenciales de la cuenta de servicio para la autenticación.
-
Crea una cuenta de servicio de Google Cloud. No necesitas configurar controles de acceso o roles de IAM para la cuenta de servicio. Para obtener más información, vea Crear y administrar cuentas de servicio en la documentación de Google Cloud.
-
Crear una llave de JSON para la cuenta de servicio y almacenarla de forma segura. Para obtener más información, vea Crear y administrar claves de cuentas de servicio en la documentación de Google Cloud.
-
Si aún no has creado un bucket, házlo ahora. Para obtener más información, vea Crear cubos de almacenamiento en la documentación de Google Cloud.
-
Dale a la cuenta de servicio el el rol de Credor de Objetos de Almacenamiento para el bucket. Para obtener más información, vea Usar permisos de Cloud IAM en la documentación de Google Cloud.
-
En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa.
1. En la barra lateral de la cuenta de empresa, haz clic en Configuración. 1. En " Configuración", haz clic en Registro de auditoría. -
En "Registro de auditoría", haz clic en Streaming de registros.
-
Seleccione el menú desplegable Configurar secuencia y haga clic en Google Cloud Storage.
-
Debajo de "Bucket", teclea el nombre de tu bucket de Google Cloud Storage.
-
Debajo de "Credenciales de JSON", pega todo el contenido del archivo para tu llave JSON de la cuenta de servicio.
-
Para comprobar que GitHub puede conectarse y escribir en el cubo de Google Cloud Storage, haga clic en Check endpoint (Comprobar punto de conexión).
-
Después de comprobar correctamente el punto de conexión, haga clic en Save.
Configurar la transmisión a Splunk
Para transmitir bitácoras de auditoría a la terminal del Recolector de Eventos HTTP (HEC) de Splunk, debes asegurarte de que la terminal se configure para aceptar conexiones HTTPS. Para obtener más información, vea Configuración y uso del recopilador de eventos HTTP en Splunk Web en la documentación de Splunk.
-
En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa.
1. En la barra lateral de la cuenta de empresa, haz clic en Configuración. 1. En " Configuración", haz clic en Registro de auditoría. -
En "Registro de auditoría", haz clic en Streaming de registros.
-
Haga clic en Configurar secuencia y seleccione Splunk.
-
En la página de configuración, ingresa:
-
El dominio en el cual se hospeda la aplicación que quieres transmitir.
Si usa Splunk Cloud,
Domain
debe serhttp-inputs-<host>
, dondehost
es el dominio que usa en Splunk Cloud. Por ejemplo:http-inputs-mycompany.splunkcloud.com
. -
El puerto mediante el cual la aplicación acepta datos.
Si usa Splunk Cloud,
Port
debe ser443
si no ha cambiado la configuración del puerto. Si usa la versión de evaluación gratuita de Splunk Cloud,Port
debe ser8088
. -
Un token que pueda utilizar GitHub para autenticarse a la aplicación de terceros.
-
-
Deje activada la casilla Enable SSL verification (Habilitar comprobación SSL).
Las bitácoras de auditoría siempre se transmiten como datos cifrados, sin embargo, si seleccionas esta opción, GitHub verificará el certificado SSL de tu instancia de Splunk cuando entregue eventos. La verificación por SSL te ayuda a garantizar que los eventos se entreguen a tu terminal URL con seguridad. Puedes limpiar la selección de esta opción, pero te recomendamos que dejes habilitada la verificación por SSL.
-
Haga clic en Check endpoint (Comprobar punto de conexión) para comprobar que GitHub puede conectarse y escribir en el punto de conexión de Splunk.
1. Después de comprobar correctamente el punto de conexión, haga clic en Save.
Borrar la transmisión de bitácoras de auditoría
-
En la esquina superior derecha de GitHub Enterprise Server, haga clic en la foto de perfil y luego en Configuración de empresa.
1. En la barra lateral de la cuenta de empresa, haz clic en Configuración. 1. En " Configuración", haz clic en Registro de auditoría. -
En "Registro de auditoría", haz clic en Streaming de registros.
-
Haga clic en Delete stream (Eliminar secuencia).
-
Se muestra un mensaje de confirmación. Haga clic en Delete stream (Eliminar secuencia) para confirmar.