Условия и источник
Зафиксируйте инсталляцию GitLab, выпуск, проект, период и способ получения аудита. Рассматривается repository_git_operation в документированной форме streaming; доступность типов и доставки нужно сверить со своей конфигурацией и лицензией. Обычный commit log не заменяет аудит доступа к репозиторию, а author коммита не является автоматическим доказательством пользователя сетевого запроса.
Как отобрать запись
В разрешённой копии stream JSONL отберите точный event_type, затем entity_path/id и время. Сохраните id события, если он есть, чтобы повторная доставка не стала новым действием. Прочитайте details целиком: его состав зависит от типа и контекста. Не применяйте схему одного способа аутентификации ко всем остальным и проверьте, является ли запись исходной или нормализованной.
Разбор примера
git-upload-pack в примере по ssh показывает операцию чтения объектов репозитория в выбранном проекте. По этой форме нельзя однозначно различить clone и очередной fetch. author_id обозначает технического инициатора; для deploy key предусмотрены особые случаи. Данные о ключе и контексте доступа важнее похожего отображаемого имени. Вымышленные адрес и IDs не являются результатом проверки инсталляции.
Интерпретация и границы
Отделите факт сетевой Git-операции от человеческого авторства кода и от вывода об утечке. Даже разрешённое чтение требует контекста, если оно неожиданно, но само событие не описывает дальнейшее использование полученного содержимого. Сопоставьте account/key/token context с задачей автоматизации, ожидаемым проектом и временем. Не приписывайте пользователю отрицательный служебный author_id как обычный ID человека.
Следующая проверка
Проверьте доступные сведения аутентификации и назначения ключа, историю изменения доступа и связанные операции проекта. Для утверждения об изменении ветки используйте соответствующий тип и состояние refs, а для запуска CI — pipeline/job. В заметке разделите «пакет объектов запрошен», «инициатор установлен технически» и «цель использования неизвестна». Отсутствие объёма переданных данных не заполняйте предположением о полном клоне.
Если записи нет
Проверьте scope потока, поддерживаемый тип, период, анонимный доступ, лицензию и ошибки приёма. Затем сравните источник с SIEM и исключите фильтр по неправильному event_type. Строка коммита не компенсирует отсутствующий audit event. Если история недоступна, укажите конкретный пробел по проекту/периоду и способу доступа; не делайте вывод, что чтения репозитория не было.