Skip to main content

Establecimiento de la configuración avanzada del examen de código con CodeQL

Puedes establecer una configuración avanzada para un repositorio con el fin de buscar vulnerabilidades de seguridad en el código usando una configuración del code scanning muy personalizable.

Quién puede usar esta característica

People with admin permissions to a repository, or the security manager role for the repository, can configure code scanning for that repository. People with write permissions to a repository can also configure code scanning, but only by creating a workflow file or manually uploading a SARIF file.

Code scanning está disponible para todos los repositorios públicos en GitHub.com. Para utilizar code scanning en un repositorio privado que pertenece a una organización, debes tener una licencia para GitHub Advanced Security. Para obtener más información, vea «Acerca de GitHub Advanced Security».

Acerca de la configuración avanzada delcode scanning

La configuración avanzada del code scanning es útil cuando necesitas un control más pormenorizado de la configuración del code scanning. La creación y edición de un archivo de flujo de trabajo de CodeQL permite cambiar la programación del examen, examinar cualquier lenguaje compatible con CodeQL, usar una compilación de matriz, etc.

También puedes 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 con varias configuraciones, a veces se generará la misma alerta mediante más de una configuración. Si una alerta proviene de varias configuraciones, puedes ver el estado de la alerta para cada configuración 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 necesitas una configuración de code scanning muy personalizable, considera 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 válido para una configuración avanzada si:

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

Establecimiento de una configuración avanzada para un repositorio

La configuración avanzada del code scanning es útil cuando necesitas personalizar el code scanning. La creación y edición de un archivo de flujo de trabajo permite elegir las consultas que deben ejecutarse, cambiar la programación del examen, seleccionar los lenguajes que deben examinarse, usar una compilación de matriz, etc.

Configuración avanzada del code scanning con CodeQL

Puedes personalizar tus code scanning mediante la creación y edición de un archivo de flujo de trabajo. La selección de una configuración avanzada genera un archivo de flujo de trabajo básico para personalizarlo.

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.com, navega a 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 "Seguridad" de la barra lateral, haz clic en Análisis y seguridad del código.

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

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

    Captura de pantalla de la sección "Code scanning" de la configuración "Seguridad y análisis del código". 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 obtener más información, vea «Personalizar la configuración avanzado de para el análisis 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. Para obtener más información, vea «Personalizar la configuración avanzado de para el análisis de código».

Para obtener información sobre la habilitación masiva, vea "Establecimiento de la configuración avanzada del examen de código con CodeQL a gran escala".

Configuración del code scanning con acciones de terceros

Nota: Los flujos de trabajo de inicio de Advanced Security se han consolidado en la categoría "Security" (Seguridad) de la pestaña Actions (Acciones) de un repositorio. Esta nueva configuración está actualmente en versión beta y está sujeta a cambios.

GitHub Enterprise Cloud proporciona flujos de trabajo de inicio para características de seguridad como code scanning. Puedes utilizar estos flujos de trabajo sugeridos para construir tus flujos de trabajo del code scanning en vez de comenzar desde cero.

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.com, navega a 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, haz clic en Nuevo flujo de trabajo para mostrar los flujos de trabajo iniciales. 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 los flujos de trabajo iniciales. 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 que muestra un archivo de flujo de trabajo inicial abierto para su edición. El botón "Documentación" está resaltado con un contorno naranja.

    Para obtener más información, vea «Utilizar flujos de trabajo iniciales» y «Personalizar la configuración avanzado de para el análisis de código».

Pasos siguientes

Después de configurar el code scanning y permitir que sus acciones se completen, puedes: