Utilizar la API de bitácoras de auditoría
Puede interactuar con el registro de auditoría mediante la API REST. Puede usar el ámbito read:audit_log
para acceder al registro de auditoría mediante la API.
Las marcas de tiempo y los campos de fecha de la respuesta de la API se miden en milisegundos desde la época UTC.
Para garantizar que la propiedad intelectual está segura y que mantiene el cumplimiento para la empresa, puede usar la API REST del registro de auditoría para de mantener copias de los datos del registro auditoría y la supervisión: - 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 GitHub App
- Solicitudes de API (deben estar habilitadas)
- Eventos de Git, como la clonación, la captura y la inserción de
El registro de auditoría muestra los eventos que desencadenan las actividades que afectan a la empresa dentro del mes actual y hasta los seis meses anteriores. El registro de auditoría retiene eventos de Git durante siete días.
De forma predeterminada, solo se muestran los eventos de los últimos tres meses. Para ver eventos anteriores, debe especificar un intervalo de fechas con el parámetro created
. Para obtener más información, vea «Entender la sintaxis de búsqueda».
Cada punto de conexión de API de registro de auditoría tiene un límite de velocidad de 1750 consultas por hora para una combinación determinada de usuario y dirección IP. Para evitar la limitación de velocidad, las integraciones que consultan la API de registro de auditoría deben consultar con una frecuencia máxima de 1750 consultas por hora. Además, si la integración recibe un error de límite de velocidad (normalmente una respuesta 403 o 429), debe esperar antes de realizar otra solicitud a la API. Para más información, consulta "Recursos en la API de REST" y "Procedimientos recomendados para usar la API de REST".
Para obtener más información sobre la API REST del registro de auditoría, consulta "Administración de GitHub Enterprise" y "Las organizaciones".
Ejemplo 1: Todos los eventos de una empresa, para una fecha específica, con paginación
Puedes usar paginación basada en cursor. Para obtener más información sobre la paginación, consulta "Uso de la paginación en la API de REST".
La consulta siguiente busca eventos de registro de auditoría creados el 1 de enero de 2022 en la empresa avocado-corp
y devuelve la primera página con un máximo de 100 elementos por página mediante paginación. Para obtener más información sobre la paginación, consulta "Uso de la paginación en la API de REST". La marca --include
hace que se devuelvan los encabezados junto con la respuesta.
curl --include -H "Authorization: Bearer TOKEN" \
--request GET \
"https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&per_page=100"
Si hay más de 100 resultados, el encabezado link
incluirá direcciones URL para capturar las páginas siguientes, primera y anteriores de los resultados.
link: <https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=MS42NjQzODMzNTk5MjdlKzEyfDloQzBxdURzaFdVbVlLWjkxRU9mNXc%3D&before=>; rel="next",
<https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=&before=>; rel="first",
<https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=&before=MS42Njc4NDA2MjM4MzNlKzEyfExqeG5sUElvNEZMbG1XZHA5akdKTVE%3D>; rel="prev"
Copia el vínculo de paginación correspondiente en la siguiente solicitud. Por ejemplo:
curl -I -H "Authorization: Bearer TOKEN" \
--request GET \
"https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=MS42Njc4NDA2MjM5NDFlKzEyfHRYa3AwSkxUd2xyRjA5bWxfOS1RbFE%3D&before="
Ejemplo 2: Eventos para solicitudes de incorporación de cambios en una empresa, para una fecha y un actor específicos
Puede especificar varias frases de búsqueda, como created
y actor
, si las separa en la dirección URL formada con el símbolo +
o el código de caracteres ASCII %20
.
La consulta siguiente busca eventos de registro de auditoría para las solicitudes de incorporación de cambios, donde el evento se ha producido el 1 de enero de 2022 o después en la empresa avocado-corp
y la acción la ha realizado el usuario octocat
:
curl -H "Authorization: Bearer TOKEN" \
--request GET \
"https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat"