Configurar el escaneo de código para tu aplicativo

Puedes habilitar, configurar e inhabilitar el escaneo de código para tu instancia de GitHub Enterprise Server. Escaneo de código permite que los usuarios escaneen el código para encontrar vulnerabilidades y errores.

El Escaneo de código se encuentra disponible para los repositorios que pertenecen a organizaciones donde se habilitó el GitHub Advanced Security. Para obtener más información, consulta la sección "Acerca de GitHub Advanced Security".

Acerca de escaneo de código

Escaneo de código 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 escaneo de código para ejecutar los análisis del CodeQL y de terceros. El Escaneo de código 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 tu instancia de GitHub Enterprise Server para que permita el escaneo de código utilizando acciones.

Tipo de análisis Opciones para generar alertas
| CodeQL | Utilizando GitHub Actions (Consulta la sección "[Configurar el escaneo de código utilizando acciones](/github/finding-security-vulnerabilities-and-errors-in-your-code/setting-up-code-scanning-for-a-repository#setting-up-code-scanning-using-actions)") o ejecutando el análisis de CodeQL en un sistema de integración contínua (IC) de terceros (consulta la sección "[Acerca del escaneo de código de CodeQL en tu sistema de IC](/code-security/secure-coding/about-codeql-code-scanning-in-your-ci-system)"). | Terceros | Utilizando GitHub Actions (consulta la sección "[Configurar el escaneo de código utilizando acciones](/github/finding-security-vulnerabilities-and-errors-in-your-code/setting-up-code-scanning-for-a-repository#setting-up-code-scanning-using-actions)") o generado externamente y cargado a GitHub Enterprise Server (consulta la sección "[Cargar un archivo SARFI a GitHub](/github/finding-security-vulnerabilities-and-errors-in-your-code/uploading-a-sarif-file-to-github)").|

Prerequisitos para el escaneo de código

Ejecutar el escaneo de código utilizando GitHub Actions

Configurar un ejecutor auto-hospedado

GitHub Enterprise Server puede ejecutar un escaneo de código 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 obtener más información, consulta las secciones "Acerca de los ejecutores auto-hospedados" y "Agregar ejecutores auto-hospedados".

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 escaneo de código

Si quieres utilizar acciones para ejecutar el escaneo de código en GitHub Enterprise Server, las acciones deben estar disponibles en tu aplicativo.

La acción CodeQL se incluye en tu instalación de GitHub Enterprise Server. Si GitHub Enterprise Server tiene acceso a internet, la acción descargará automáticamente el paquete de CodeQL que se requiere para realizar el análisis. Como alternativa, puedes utilizar una herramienta de sincronización para hacer disponible el paquete de análisis de CodeQL localmente. Para obtener más información, consulta la sección "Configurar el 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 escaneo de código para los usuarios si configuras GitHub Connect. Para obtener más información, consulta la sección "Configurar a GitHub Connect para que se sincronice con GitHub Actions" más adelante.

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 escaneo de código 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 su uso se encuentran 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 obtener más información, consulta la sección "Habilitar GitHub Connect".
  2. También tendrás que habilitar GitHub Actions para tu instancia de GitHub Enterprise Server. Para obtener más información, consulta la sección "Iniciar con las GitHub Actions para GitHub Enterprise Server".
  3. El siguiente paso es configurar el acceso a las acciones en GitHub.com utilizando GitHub Connect. Para obtener más información, consulta la sección "Habilitar el acceso automático a las acciones de GitHub.com utilizandoGitHub Connect".
  4. Agrega un ejecutor auto-hospedado a tu repositorio, organización, o cuenta empresarial. Para obtener más información, consulta "Agregar ejecutores autoalojados."

Ejecutar el escaneo de código utilizando el Ejecutor de CodeQL

Si no quieres utilizar GitHub Actions, puedes ejecutar el escaneo de código utilizando el Ejecutor de CodeQL.

El Ejecutor de CodeQL es una herramienta de línea de comandos que puedes agregar a tu sistema de IC/CD de terceros. Esta herramienta ejecuta el análisis de CodeQL en un control de un repositorio de GitHub. Para obtener más información, consulta la sección "Ejecutar el escaneo de código en tu sistema de IC".

¿Te ayudó este documento?

Política de privacidad

¡Ayúdanos a hacer geniales estos documentos!

Todos los documentos de GitHub son de código abierto. ¿Notas algo que esté mal o que no sea claro? Emite una solicitud de cambios.

Haz una contribución

O, aprende cómo contribuir.