Skip to main content

Настройка расширенной настройки для сканирования кода

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

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

Владельцы репозитория, владелец организации, руководители безопасности и пользователи с ролью администратора

Code scanning доступен для следующих типов репозитория:

  • Общедоступные репозитории для GitHub.com
  • Репозитории, принадлежащие организации, на GitHub Team, GitHub Enterprise Cloud или GitHub Enterprise Server, с включённым GitHub Code Security .

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

Предпосылки

Ваш репозиторий имеет право на расширенную настройку, если она соответствует этим требованиям.

  • Он использует CodeQLподдерживаемых языках или планируете создавать результаты сканирования кода с помощью стороннего средства.
  • GitHub Actions включен.
  • Он является общедоступным или включен параметр GitHub Code Security.

Настройка расширенной настройки для code scanning с помощью CodeQL

Вы можете настроить анализ CodeQL путем создания и редактирования файла рабочего процесса. При выборе расширенной установки создается базовый файл рабочего процесса для настройки с помощью стандартного синтаксиса рабочего процесса и указания параметров для действия CodeQL . См. раздел [AUTOTITLE и Рабочие процессы](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning).

При использовании действий для запуска code scanning используются минуты. Дополнительные сведения см. в разделе Биллинг GitHub Actions.

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

  2. Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".

    Снимок экрана: заголовок репозитория с вкладками. Вкладка "Параметры" выделена темно-оранжевым контуром.

  3. В разделе "Безопасность" боковой панели щелкните Advanced Security.

  4. Прокрутите вниз до "Code Security", в строке "CodeQL анализа" выберите "Настроить " треугольник вниз" aria-down"true" aria-label="треугольник вниз" %}, а затем нажмите кнопку "Дополнительно".

    Примечание.

    Если вы переключитесь с настройки по умолчанию на расширенную настройку, в строке "CodeQL анализа выберите , а затем выберите Переключитесь на расширенный. В появившемся всплывающем окне нажмите кнопку "Отключить" CodeQL.

    Снимок экрана: раздел "Code Security" параметров "Advanced Security". Кнопка "Расширенная настройка" выделена оранжевым контуром.

  5. Чтобы настроить работу code scanning по сканированию кода, измените рабочий процесс.

    Как правило, можно зафиксировать переменные данных Рабочий процесс анализа CodeQL без внесения изменений в него. Однако многие из сторонних рабочих процессов нуждаются в дополнительной настройке, поэтому перед фиксацией прочтите комментарии в рабочем процессе.

    Дополнительные сведения см. в разделе [AUTOTITLE и Параметры настройки рабочих процессов для сканирования кода](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages).

  6. Нажмите кнопку "Зафиксировать изменения", чтобы отобразить форму изменений фиксации.

    Снимок экрана: форма для создания нового файла. Справа от имени файла зеленая кнопка с меткой "Фиксация изменений...", выделена темно-оранжевым цветом.

  7. В поле сообщения фиксации введите сообщение фиксации.

  8. Выберите, следует ли выполнять фиксацию непосредственно в ветви по умолчанию или создайте новую ветвь и запустите запрос на вытягивание.

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

  10. Если вы создали новую ветвь, нажмите кнопку "Создать запрос на вытягивание" и откройте запрос на вытягивание, чтобы объединить изменение в ветвь по умолчанию.

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

Триггеры on:pull_request и on:push для проверки кода используются для разных целей. См. раздел [AUTOTITLE и Параметры настройки рабочих процессов для сканирования кода](/actions/using-workflows/triggering-a-workflow).

Сведения о массовом включении см. в разделе Настройка расширенной настройки для сканирования кода с помощью CodeQL в масштабе.

Настройка code scanning с помощью сторонних действий

GitHub включает шаблоны рабочих процессов для сторонних действий, а также действие CodeQL . Использование шаблона рабочего процесса гораздо проще, чем написание рабочего процесса неопроверченным.

При использовании действий для запуска code scanning используются минуты. Дополнительные сведения см. в разделе Биллинг GitHub Actions.

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

  2. Под именем репозитория щелкните Actions.

    Снимок экрана: вкладки для репозитория github/docs. Вкладка "Действия" выделена оранжевым контуром.

  3. Если репозиторий уже настроен и запущен хотя бы один рабочий процесс, нажмите кнопку "Создать рабочий процесс", чтобы отобразить шаблоны рабочих процессов . Если рабочие процессы для репозитория не настроены, переходите к следующему шагу.

    Снимок экрана: вкладка "Действия" для репозитория. Кнопка "Новый рабочий процесс" описана в темно-оранжевый цвет.

  4. В представлении "Выбор рабочего процесса" или "Начало работы с GitHub Actions" прокрутите вниз до категории "Безопасность" и нажмите кнопку "Настроить " в рабочем процессе, который требуется настроить. Чтобы найти рабочий процесс безопасности, вам может потребоваться щелкнуть "Просмотреть все ", чтобы найти рабочий процесс безопасности, который требуется настроить.

    Снимок экрана: категория "Безопасность" шаблонов рабочих процессов. Кнопка "Настройка" и "Просмотреть все" выделены оранжевым контуром.

  5. Следуйте инструкциям в рабочем процессе, чтобы настроить его в соответствии с вашими потребностями. Чтобы получить более общую помощь по рабочим процессам, щелкните "Документация " в правой области страницы рабочего процесса.

    Снимок экрана: файл шаблона рабочего процесса, открытый для редактирования. Кнопка "Документация" выделена оранжевым контуром.

  6. Завершив определение конфигурации, добавьте новый рабочий процесс в ветвь по умолчанию.

    Дополнительные сведения см. в разделе [AUTOTITLE и Использование шаблонов рабочих процессов](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning).

Дальнейшие шаги

После успешного выполнения рабочего процесса можно начать изучение и разрешение оповещений code scanning . Дополнительные сведения о оповещениях code scanning см. в разделе [AUTOTITLE и О предупреждениях о сканировании кода](/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository).

Узнайте, как code scanning работает в качестве проверок запросов на вытягивание, см . раздел AUTOTITLE.

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

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

  •         [AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests).
    
  •         [AUTOTITLE](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#github-actions-notification-options).
    
  •         [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning).
    
  •         [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/viewing-code-scanning-logs).