Esta versión de GitHub Enterprise se discontinuó el 2021-09-23. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener un mejor desempeño, más seguridad y nuevas características, actualiza a la última versión de GitHub Enterprise. Para obtener ayuda con la actualización, contacta al soporte de GitHub Enterprise.

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 si tienes una licencia de GitHub Advanced Security.

Nota: El Escaneo de código se encuentra en beta dentro de GitHub Enterprise Server 2.22. Para encontrar un lanzamiento de disponibilidad general del escaneo de código, mejora al último lanzamiento de GitHub Enterprise Server.

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 utilizando el Ejecutor de CodeQL en un sistema de integración continua (IC) de terceros (consulta la sección "[ejecutar el escaneo de código de CodeQL en tu sistema de IC](/github/finding-security-vulnerabilities-and-errors-in-your-code/running-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

Para ejecutar el escaneo de código en GitHub Enterprise Server con las GitHub Actions, las acciones adecuadas deben estar disponibles localmente. Puedes hacer que las acciones estén disponibles en tres formas.

  • Recomendada: Puedes utilizar GitHub Connect para descargar acciones automáticamente desde GitHub.com. La máquina que hospeda tu instancia debe poder acceder a GitHub.com. Este enfoque garantiza que obtengas el software más reciente de forma automática. Para obtener más información, consulta la sección "Configurar GitHub Connect para que se sincronice con GitHub Actions".
  • Si quieres utilizar el Flujo de trabajo de análisis de CodeQL, puedes sincronizar el repositorio de GitHub.com a GitHub Enterprise Server, utilizando la herramienta de sincronización de acciones de CodeQL en https://github.com/github/codeql-action-sync-tool. Puedes utilizar esta herramienta sin importar si tu instancia de GitHub Enterprise Server o tus ejecutores de GitHub Actions tienen acceso a internet, siempre y cuando puedas acceder tanto a tu instancia de GitHub Enterprise Server como a GitHub.com de forma simultánea en tu computadora.
  • Puedes crear una copia local del repositorio de una accion en tu servidor si clonas el repositorio de GitHub.com que contiene la acción. Por ejemplo, si quieres utilizar acciones para el escaneo de código de CodeQL, puedes crear un repositorio en tu instancia, el cual se llame github/codeql-action, y luego clonar el repositorio desde GitHub.com y posteriormente subir ese repositorio en el de github/codeql-action de tu instancia. También necesitarás descargar cualquiera de los lanzamientos del repositorio en GitHub.com y cargarlos en el repositorio de github/codeql-action de tu instancia como lanzamientos.

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".