Skip to main content

Establecimiento de la configuración avanzada para el examen del código

Puede configurar la configuración avanzada de un repositorio para encontrar vulnerabilidades en el código usando una configuración de code scanning altamente personalizable.

¿Quién puede utilizar esta característica?

Propietarios de repositorios, propietarios de organizaciones, administradores de seguridad y usuarios con el rol de administrador

Code scanning está disponible para los siguientes tipos de repositorios:

  • Repositorios públicos en GitHub.com
  • Repositorios propiedad de la organización en GitHub Enterprise Cloud con GitHub Advanced Security habilitado

Acerca de la configuración avanzada de code scanning

La configuración avanzada del code scanning es útil cuando necesitas personalizar el code scanning. Mediante la creación y edición de un archivo de flujo de trabajo, puede definir cómo desarrollar lenguajes compilados, elegir las consultas que deben ejecutarse, seleccionar los lenguajes que deben examinarse, usar una compilación de matriz, etc. También tiene acceso a todas las opciones para controlar los flujos de trabajo, por ejemplo: cambiar la programación de examen, definir desencadenadores de flujos de trabajo, especificar los ejecutores especialistas que se van a usar. Para más información sobre los flujos de trabajo de GitHub Actions, consulta Acerca de los flujos de trabajo.

También puede configurar el code scanning con herramientas de terceros. Para obtener más información, consulta Configuración del code scanning con acciones de terceros.

Si ejecutas el análisis de código mediante varias configuraciones, en ocasiones una alerta tendrá varios orígenes de análisis. Si una alerta tiene varios orígenes de análisis, puede ver el estado de la alerta para cada origen de análisis en la página de alertas. Para obtener más información, vea «Acerca de las alertas de análisis de código».

Si no necesita una configuración de code scanning muy personalizable, considere la posibilidad de usar la configuración predeterminada para el code scanning. Para obtener más información sobre la configuración predeterminada, consulta Establecimiento de la configuración predeterminada para el examen del código.

Requisitos previos

El repositorio es apto para la configuración avanzada si cumple estos requisitos.

  • Usa lenguajes compatibles con CodeQL o tienes previsto generar resultados de examen del código con una herramienta de terceros.
  • GitHub Actions está habilitado.
  • Está visible públicamente o GitHub Advanced Security está habilitado.

Configuración avanzada del code scanning con CodeQL

Puede personalizar sus análisis de CodeQL mediante la creación y edición de un archivo de flujo de trabajo. Al seleccionar la configuración avanzada, se genera un archivo de flujo de trabajo básico para personalizar mediante la sintaxis de flujo de trabajo estándar y se especifican opciones para la acción de CodeQL. Consulta Acerca de los flujos de trabajo y Personalización de la configuración avanzada para el examen de código.

Al usar acciones para ejecutar code scanning se usarán minutos. Para más información, consulta "Acerca de la facturación para las Acciones de GitHub".

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Configuración. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

    Captura de pantalla de un encabezado de repositorio en el que se muestran las pestañas. La pestaña "Configuración" está resaltada con un contorno naranja oscuro.

  3. En la sección "Security" de la barra lateral, haz clic en Code security.

  4. Desplázate hacia abajo hasta la sección "Code scanning", selecciona Configurar y, después, haz clic en Avanzado.

    Note

    Si vas a cambiar de la configuración predeterminada a la configuración avanzada, en la sección "Code scanning", selecciona y, a continuación, haz clic en Switch to advanced. En la ventana emergente que aparece, haga clic en Deshabilitar CodeQL .

    Recorte de pantalla de la sección "Code scanning" de la configuración "Code security". El botón "Configuración avanzada" está resaltado con un contorno naranja.

  5. Para personalizar la forma en que el code scanning escanea tu còdigo, edita el flujo de trabajo.

    Generalmente, puedes confirmar el Flujo de trabajo de análisis de CodeQL sin hacerle ningún cambio. Pero muchos de los flujos de trabajo de terceros necesitan una configuración adicional, así que lea los comentarios del flujo de trabajo antes de confirmar.

    Para más información, consulta Personalización de la configuración avanzada para el examen de código y Análisis de código de CodeQL para lenguajes compilados.

  6. Haz clic en Confirmar cambios... para mostrar el formulario de confirmación de cambios.

    Captura de pantalla del formulario para crear un nuevo archivo. A la derecha del nombre de archivo, un botón verde, con la etiqueta "Confirmar cambios...", está resaltado en naranja oscuro.

  7. En el campo de mensaje de confirmación, escribe un mensaje de confirmación.

  8. Elija si quiere confirmar directamente en la rama predeterminada o crear una rama e iniciar una solicitud de incorporación de cambios.

  9. Haz clic en Confirmar nuevo archivo para confirmar el archivo de flujo de trabajo en la rama predeterminada o haz clic en Proponer nuevo archivo para confirmar el archivo en una nueva rama.

  10. Si has creado una nueva rama, haz clic en Crear solicitud de cambios y abre una solicitud de cambios para combinar el cambio en la rama predeterminada.

En el Flujo de trabajo de análisis de CodeQL sugerido, el code scanning se configura para analizar tu código cada vez que envíes un cambio a la rama predeterminada o a cualquier rama protegida, o que emitas una solicitud de incorporación cambios contra la rama predeterminada. Como resultado, el code scanning comenzarà ahora.

Los valores on:pull_request y on:push que se desencadenan para el examen de código son útiles para distintos propósitos. Consulta Personalización de la configuración avanzada para el examen de código y Activar un flujo de trabajo.

Para obtener información sobre la habilitación masiva, consulta Establecimiento de la configuración avanzada para el examen de código con CodeQL a gran escala.

Configuración del code scanning con acciones de terceros

GitHub Enterprise Cloud incluye plantillas de flujo de trabajo para acciones de terceros, así como la acción CodeQL. El uso de una plantilla de flujo de trabajo es mucho más fácil que escribir un flujo de trabajo sin asistencia.

Al usar acciones para ejecutar code scanning se usarán minutos. Para más información, consulta "Acerca de la facturación para las Acciones de GitHub".

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Acciones.

    Captura de pantalla de las pestañas del repositorio "github/docs". La pestaña "Proyectos" aparece resaltada con un contorno naranja.

  3. Si el repositorio ya tiene al menos un flujo de trabajo configurado y en ejecución, haga clic en Nuevo flujo de trabajo para mostrar las plantillas de flujo de trabajo. Actualmente no hay flujos de trabajo configurados para el repositorio, ve al siguiente paso.

    Captura de pantalla de la pestaña Acciones de un repositorio. El botón "Nuevo flujo de trabajo" aparece resaltado en naranja oscuro.

  4. En la vista "Elegir un flujo de trabajo" o "Introducción a GitHub Actions", desplázate hacia abajo hasta la categoría "Seguridad" y haz clic en Configurar en el flujo de trabajo que deseas configurar. Es posible que tengas que hacer clic en Ver todo para encontrar el flujo de trabajo de seguridad que deseas configurar.

    Captura de pantalla de la categoría Seguridad de las plantillas de flujo de trabajo. El botón Configurar y el vínculo "Ver todo" están resaltados con un contorno naranja.

  5. Sigue las instrucciones del flujo de trabajo para personalizarlo según tus necesidades. Para obtener una ayuda más general sobre los flujos de trabajo, haz clic en Documentación en el panel derecho de la página de flujo de trabajo.

    Captura de pantalla en la que se muestra un archivo de plantilla de flujo de trabajo abierto para su edición. El botón "Documentación" está resaltado con un contorno naranja.

    Para más información, consulta Uso de plantillas de flujo de trabajo y Personalización de la configuración avanzada para el examen de código.

Pasos siguientes

Después de que el flujo de trabajo se haya ejecutado correctamente al menos una vez, está listo para empezar a examinar y resolver alertas de code scanning. Para obtener más información sobre las alertas del code scanning, consulta Acerca de las alertas de análisis de código y Evaluación de alertas de análisis de código para el repositorio.

Para obtener información sobre cómo se comportan las ejecuciones de code scanning como comprobaciones en las solicitudes de incorporación de cambios, consulta Clasificar las alertas del escaneo de código en las solicitudes de cambios.

Puedes encontrar información detallada sobre la configuración del code scanning, incluidas las marcas de tiempo de cada examen y el porcentaje de archivos escaneados, en la página de estado de la herramienta. Para más información, consulta Acerca de la página de estado de la herramienta para el examen de código.

Información adicional