Skip to main content

Enterprise Server 3.21 в настоящее время доступен в качестве кандидата на выпуск.

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

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

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

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

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

Около code scanning

Code scanning — это функция, используемая для анализа кода в репозитории GitHub для поиска уязвимостей системы безопасности и ошибок кодирования. Все проблемы, выявленные анализом, отображаются в репозитории.

Вы можете настроить code scanning для запуска CodeQL анализа и стороннего анализа. Code scanning также поддерживает проведение анализа нативно с использованием GitHub Actions существующей CI/CD инфраструктуры или внешне. Ниже приведены пункты резюмируют опции, доступные пользователям при настройке экземпляр GitHub Enterprise Server на разрешение code scanning использовать действия.

  • CodeQL: использует GitHub Actions с настройкой по умолчанию (см[. AUTOTITLE) или расширенную настройку (см. autoTITLE) или выполняет анализ CodeQL в сторонней системе непрерывной интеграции (CI) (см. AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-advanced-setup-for-code-scanning-with-codeql)).
  • Третий&8209; сторона: использует GitHub Actions или сторонние средства и отправляет результаты в GitHub (см. AUTOTITLE](/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github)).

Проверяете, включает ли ваша лицензия Advanced Security

Вы можете определить, имеет ли ваша организация лицензию на Advanced Security products , просмотрив параметры предприятия. Дополнительные сведения см. в разделе Создание GitHub Advanced Securityпродуктов для вашего бизнеса.

Предварительные требования для code scanning

Запуск code scanning с использованием GitHub Actions

Подготовка локального runner

          GitHub Может работать code scanning с помощью рабочего GitHub Actions процесса. Во-первых, вам нужно предоставить одного или нескольких самостоятельных GitHub Actions бегунов в вашей среде. Вы можете предоставить локальные средства выполнения на уровне репозитория, организации или корпоративной учетной записи. См. раздел [AUTOTITLE и [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners)](/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners).

Вы должны убедиться, что Git находится в переменной PATH на любых самохостированных раннерах, которые вы используете для выполнения CodeQL действий.

Примечание.

Если вы используете CodeQLcode scanning для анализа кода, написанного на Python в вашем предприятии, убедитесь, что ваш самостоятельный раннер установлен Python 3.

Подготовка масштабируемого набора runner

Вы можете создать Actions Runner Controller отдельный набор масштабов раннера для вашего GitHub Enterprise Server экземпляра. См . раздел AUTOTITLE.

Предоставление действий для code scanning

Если вы хотите использовать действия для запуска code scanning , GitHub Enterprise Serverдействия должны быть доступны на вашем устройстве.

Действие CodeQL включено в вашу установку GitHub Enterprise Server. Если оба GitHub Enterprise Server3.21 и GitHub Actions ваш участник имеют доступ к интернету, действие автоматически скачает набор CodeQL2.24.3 , необходимый для анализа. В качестве альтернативы можно использовать инструмент синхронизации, чтобы сделать последнюю выпущенную версию CodeQL аналитического пакета доступной локально. См. ниже раздел «Конфигурирование CodeQL анализа на сервере без доступа к интернету ».

Вы также можете сделать сторонние действия доступными для пользователей для code scanning, настроив GitHub Connect. См . раздел AUTOTITLE ниже.

Настройка CodeQL анализа на сервере без доступа к интернету

Если сервер, на котором вы работаетеGitHub Enterprise Server, не подключён к интернету, и вы хотите позволить пользователям включитьCodeQLcode scanningрепозитории, вам нужно использовать CodeQL инструмент синхронизации действий, чтобы скопировать CodeQL аналитический пакет на GitHub.com ваш сервер. Средство и сведения о его использовании доступны по адресу https://github.com/github/codeql-action-sync-tool.

Если настроить CodeQL инструмент синхронизации действий, можно использовать его для синхронизации последних релизов CodeQL действия и связанного CodeQL аналитического пакета. Они совместимы с GitHub Enterprise Server.

Настройка GitHub Connect для синхронизации GitHub Actions

  1. Если вы хотите скачать рабочие процессы действий по запросу из GitHub.com, вам нужно включить GitHub Connect. См . раздел AUTOTITLE.
  2. Вам также нужно будет включить GitHub Actions. См . раздел AUTOTITLE.
  3. Следующий шаг — настроить доступ к действиям на GitHub.com с помощью GitHub Connect. См . раздел AUTOTITLE.
  4. Добавьте локальное средство выполнения в репозиторий, организацию или корпоративную учетную запись. См . раздел AUTOTITLE.

Запуск сканирования кода с помощью CodeQL CLI

Если не хотите GitHub Actionsиспользовать , лучше запускать code scanning с CodeQL CLI.

Это CodeQL CLI инструмент командной строки, который используется для анализа кодовых баз на любой машине, включая стороннюю систему CI/CD. См . раздел AUTOTITLE.