Skip to main content

Оценка оповещений сканирования кода для репозитория

В представлении безопасности можно изучить и оценить оповещения о потенциальных уязвимостях или ошибках в коде проекта.

Кто может использовать эту функцию?

Пользователи с доступом на запись

Любой, у кого есть разрешение на чтение репозитория, может видеть code scanning аннотации в pull requests. Дополнительные сведения см. в разделе Рассмотрение оповещений проверки кода в запросах на вытягивание.

Просмотр оповещений в репозитории

Вам нужно разрешение на запись, чтобы просматривать сводку всех оповещений для репозитория на Security вкладке.

По умолчанию code scanning страница оповещений фильтруется так, чтобы показывать оповещения только для стандартной ветки репозитория.

  1. На GitHubперейдите на главную страницу репозитория.

  2. Под названием репозитория нажмите на Security вкладку. Если вы не видите вкладку « Security» — выберите выпадающее меню и нажмите Security.

  3. На левой боковой панели щелкните Code scanning.

  4. При необходимости используйте поле свободного текстового поиска или раскрывающееся меню для фильтрации оповещений. Например, можно отфильтровать список по инструменту, который использовался для идентификации оповещений.

    Снимок экрана: страница оповещений code scanning. Поле поиска и раскрывающееся меню фильтров описаны в темно-оранжевый цвет.

  5. В разделе "Code scanning" щелкните оповещение, которое вы хотите просмотреть, чтобы отобразить подробную страницу оповещений. Состояние и сведения на странице оповещений отражают состояние оповещения только в ветви репозитория по умолчанию, даже если это оповещение существует в других ветвях. Состояние оповещения в ветвях, не являющихся ветвью по умолчанию, отображается в разделе Затронутые ветви в правой части страницы оповещений. Если оповещение не существует в ветви по умолчанию, его состояние оповещения отображается как "в запросе на вытягивание" или "в ветки" и выделяется серым цветом. В разделе "Разработка " показаны связанные ветви и запросы на вытягивание, которые исправят оповещение.

  6. Если в оповещении выделена проблема с потоком данных, щелкните Показать пути, чтобы отобразить путь из источника данных к приемнику, где используется этот поток.

    Снимок экрана: оповещение code scanning. Ссылки "Показать пути" и "Показать больше" описаны в темно-оранжевый цвет.

  7. Оповещения из CodeQL анализа включают описание проблемы. Нажмите кнопку Дополнительно, чтобы узнать, как исправить код.

Дополнительные сведения см. в разделе О предупреждениях о сканировании кода.

Примечание.

Информацию о последнем code scanning анализе можно увидеть на странице статуса инструмента. Дополнительные сведения см. в разделе Используйте страницу статуса инструмента для сканирования кода.

Просмотр метрик для CodeQL уведомлений о pull request-запросах для организации

Для code scanning получения оповещений от CodeQL анализа вы можете использовать обзор безопасности, чтобы увидеть, как CodeQL работает pull request в репозиториях, где у вас есть доступ к записи по всей организации, а также определить репозитории, где может понадобиться действия. Дополнительные сведения см. в разделе Метрики оповещений о pull request в CodeQL.

Уведомления о code scanning фильтрации

Вы можете фильтровать оповещения, отображаемые в виде code scanning оповещений. Это полезно, когда нужно выделить определенный тип оповещений. Для уточнения списка отображаемых оповещений можно использовать ряд стандартных фильтров и ключевых слов.

При выборе ключевого слова из раскрывающегося списка или при вводе ключевого слова в поле поиска отображаются только значения с результатами. Это упрощает настройку фильтров, которые не находят результатов.

Снимок экрана: поле поиска в представлении оповещений. Поле содержит branch:dependabot, а все допустимые ветви с соответствующим именем отображаются.

Если ввести несколько фильтров, в представлении будут отображаться оповещения, соответствующие всем этим фильтрам. Например, с фильтром is:closed severity:high branch:main будут отображаться только закрытые оповещения с высоким уровнем серьезности в ветви main. Исключение составляют фильтры, относящиеся к ссылкам (ref, branch и pr): например, с фильтром is:open branch:main branch:next отображаются открытые оповещения как из ветви main, так и из ветви next.

Обратите внимание: если оповещения, отфильтрованные в ветви, отличной от используемой по умолчанию, присутствуют в ветви по умолчанию, на странице оповещений для любого такого оповещения по-прежнему будет отражаться состояние из ветви по умолчанию, даже если оно конфликтует с состоянием в ветви, отличной от используемой по умолчанию. Например, для оповещения, которое присутствует в списке "Открыто" в сводке оповещений для ветви branch-x, на странице оповещений может отображаться состояние "Исправлено", если это оповещение уже исправлено в ветви по умолчанию. Состояние оповещения для ветви, к которой применен фильтр, можно просмотреть в разделе Затронутые ветви в правой части страницы оповещений.

К фильтру tag можно добавить префикс -, чтобы исключить результаты с этим тегом. Например, -tag:style отображаются только оповещения, не имеющие тега style .

Ограничение результатов только кодом приложения

С помощью фильтра "Оповещения только в коде приложения" или ключевого слова autofilter:true со значением можно ограничить результаты оповещениями в коде приложения. Дополнительные сведения о типах кода, которые автоматически помечены как не код приложения, см. в разделе О предупреждениях о сканировании кода.

Оповещения о поиске code scanning

В списке оповещений можно выполнять поиск. Это полезно, если в репозитории имеется много оповещений или если вы не знаете точное имя оповещения. GitHub выполняет поиск по свободному тексту:

  • Имя оповещения
  • Сведения об оповещении (это также включает сведения, скрытые из представления по умолчанию в разделе "Показать больше сворачивания")
Вид поискаПример синтаксисаResults
Поиск по одному словуinjectionВозвращает все оповещения, содержащие слово injection
Поиск по нескольким словамsql injectionВозвращает все оповещения, содержащие слова sql или injection
Поиск точного совпадения
(используются двойные кавычки)
"sql injection"Возвращает все оповещения, содержащие точную фразу sql injection
Поиск с оператором ORsql OR injectionВозвращает все оповещения, содержащие слова sql или injection
Поиск с оператором ANDsql AND injectionВозвращает все оповещения, содержащие оба слова: sql и injection

Совет

  • Поиск по нескольким словам эквивалентен поиску с оператором OR.
  • Поиск с оператором AND возвращает результаты, в которых слова из поискового запроса находятся в имени оповещения или в сведениях о нем_в любом месте_ и в любом порядке.
  1. На GitHubперейдите на главную страницу репозитория.

  2. Под названием репозитория нажмите на Security вкладку. Если вы не видите вкладку « Security» — выберите выпадающее меню и нажмите Security.

  3. На левой боковой панели щелкните Code scanning.

  4. Справа от раскрывающихся меню Фильтры введите в поле поиска произвольного текста ключевые слова, которые нужно найти.

           ![Снимок экрана: поле поиска в представлении оповещений. Поле содержит предварительно определенные фильтры "is: open branch:main" и свободный текст выделенного "sql или внедрения".](/assets/images/help/repository/code-scanning-search-alerts.png)
    
  5. Нажмите Ввод. Список оповещений будет содержать открытые code scanning оповещения, соответствующие вашим критериям поиска.

Аудит ответов на code scanning оповещения

Вы можете проверить действия, выполненные в ответ на оповещения code scanning с помощью средств GitHub. Дополнительные сведения см. в разделе Аудит оповещений системы безопасности.

Дополнительные материалы

  •         [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/resolving-code-scanning-alerts)
    
  •         [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests)
    
  •         [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning)
    
  •         [AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning)