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.
|
Opciones para generar alertas |
---|---|
Prerequisitos para el escaneo de código
-
Una licencia para GitHub Advanced Security
-
El Escaneo de código habilitado en la consola de administración (consulta la sección "Habilitar la GitHub Advanced Security para tu empresa")
-
Una MV o contenedor para ejecutar el análisis de 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 degithub/codeql-action
de tu instancia. También necesitarás descargar cualquiera de los lanzamientos del repositorio en GitHub.com y cargarlos en el repositorio degithub/codeql-action
de tu instancia como lanzamientos.
Configurar GitHub Connect para sincronizarse con GitHub Actions
- 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".
- 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".
- 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".
- 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".