Skip to main content

Configurar el escaneo de código para tu aplicativo

Puedes habilitar, configurar y deshabilitar code scanning para your GitHub Enterprise Server instance. Code scanning permite que los usuarios escaneen el código para encontrar vulnerabilidades y errores.

Code scanning is available for organization-owned repositories in GitHub Enterprise Server. This feature requires a license for GitHub Advanced Security. Para más información, consulte "Acerca de GitHub Advanced Security".

Acerca de code scanning

Code scanning es una característica que utilizas para analizar el código en un repositorio de GitHub para encontrar vulnerabilidades de seguridad y errores de código. Cualquier problema que se identifique con el análisis se muestra en GitHub Enterprise Server.

Puedes configurar el code scanning para ejecutar los análisis del CodeQL y de terceros. El Code scanning también es compatible con ejecutar análisis de forma nativa utilizando las GitHub Actions o utilizando la infraestructura de IC/DC existente externamente. La siguiente tabla resume todas las opciones disponibles para los usuarios cuando configuras your GitHub Enterprise Server instance para que permita el code scanning utilizando acciones.

Tipo de análisisOpciones para generar alertas
CodeQLUso de GitHub Actions (vea "Configuración de code scanning mediante acciones") o ejecución del análisis de CodeQL en un sistema de integración continua (CI) de terceros (vea "Acerca de CodeQL code scanning en el sistema de CI").
Third‑partyUso de GitHub Actions (vea "Configuración de code scanning mediante acciones") o generado de forma externa y cargado a GitHub Enterprise Server (vea "Carga de un archivo SARIF a GitHub").

Verificar si tu licencia incluye a la GitHub Advanced Security

Puedes identificar si tu empresa tiene una licencia de GitHub Advanced Security revisando los ajustes de la misma. Para obtener más información, consulte "Habilitar la Seguridad Avanzada de GitHub para tu empresa".

Prerequisitos para el code scanning

Ejecutar el code scanning utilizando GitHub Actions

Configurar un ejecutor auto-hospedado

GitHub Enterprise Server puede ejecutar un code scanning utilizando un flujo de trabajo de GitHub Actions. Primero, necesitas aprovisionar uno o más ejecutores auto-hospedados de GitHub Actions en tu ambiente. Puedes aprovisionar ejecutores auto-hospedados a nivel de repositorio, organización o empresa. Para más información, vea "Acerca de los ejecutores autohospedados" y "Adición de ejecutores autohospedados".

Debes asegurarte de que Git esté en la variable de "PATH" de cualquier ejecutor auto-hospedado que utilices para ejecutar las acciones de CodeQL.

Aprovisionar las acciones del code scanning

Si quiere usar acciones para ejecutar code scanning en GitHub Enterprise Server, las acciones deben estar disponibles en el dispositivo.

La acción CodeQL se incluye en tu instalación de GitHub Enterprise Server. Si GitHub Enterprise Server 3.4 tiene acceso a Internet, la acción descargará automáticamente la agrupación de CodeQL 2.7.6 necesaria para realizar el análisis. Como alternativa, puedes utilizar una herramienta de sincronización para que el conjunto de análisis de CodeQL esté disponible de forma local. Para más información, vea "Configuración del análisis de CodeQL en un servidor sin acceso a Internet" a continuación.

También puedes hacer que acciones de terceros estén disponibles para el code scanning para los usuarios si configuras GitHub Connect. Para más información, vea "Configuración de GitHub Connect para sincronizar GitHub Actions" a continuación.

Configurar el análisis de CodeQL en un servidor sin acceso a internet

Si el servidor en el que estás ejecutando a GitHub Enterprise Server no está conectado a internet y quieres permitir que los usuarios habiliten el code scanning de CodeQL para sus repositorios, debes utilizar la herramienta de sincronización de la acción de CodeQL para copiar el paquete de análisis de CodeQL desde GitHub.com hacia tu servidor. La herramienta y los detalles de cómo usarla están disponibles en https://github.com/github/codeql-action-sync-tool.

Si configuras la herramienta de sincronización de la acción de CodeQL, puedes utilizarla para sincronizar los últimos lanzamientos de la acción de CodeQL y el paquete de análisis de CodeQL relacionado. Estos son compatibles con GitHub Enterprise Server.

Configurar GitHub Connect para sincronizarse con GitHub Actions

  1. Si quieres descargar flujos de trabajo de acciones por petición desde GitHub.com, necesitarás habilitar GitHub Connect. Para más información, vea "Habilitación de GitHub Connect".
  2. También tendrá que habilitar GitHub Actions para your GitHub Enterprise Server instance. Para más información, vea "Introducción a GitHub Actions para GitHub Enterprise Server".
  3. El siguiente paso es configurar el acceso a las acciones en GitHub.com utilizando GitHub Connect. Para más información, vea "Habilitación del acceso automático a las acciones de GitHub.com mediante GitHub Connect".
  4. Agrega un ejecutor auto-hospedado a tu repositorio, organización, o cuenta empresarial. Para más información, vea "Adición de ejecutores autohospedados".

Ejecutar el escaneo de código utilizando el CodeQL CLI

Si no quieres utilizar GitHub Actions, debes ejecutar el code scanning utilizando el CodeQL CLI.

El CodeQL CLI es una herramienta de línea de comandos que utilizas para analizar bases de código en cualquier máquina, incluyendo un sistema de IC/DC de terceros. Para más información, vea "Instalación de la CLI de CodeQL en el sistema de CI".