Skip to main content

Editar la configuración predeterminada

Puedes editar la configuración predeterminada existente para el code scanning para que se adapte mejor a tus necesidades de seguridad del código.

¿Quién puede utilizar esta característica?

Propietarios de la organización, administradores de seguridad y miembros de la organización con el rol de administrador

Información sobre de la edición de la configuración predeterminada

Después de ejecutar un análisis inicial del código con la configuración predeterminada, es posible que tengas que realizar cambios en la configuración para que se adapte mejor a tus necesidades de seguridad del código. Para las configuraciones existentes de la configuración predeterminada, puedes editar:

  • Qué lenguajes se analizarán con la configuración predeterminada.
  • El conjunto de consultas que se ejecuta durante el análisis. Para obtener más información sobre los conjuntos de consultas disponibles, consulta Conjuntos de consultas codeQL.
  • Modelos de riesgos (versión preliminar pública) que se van a usar para el análisis. La elección del modelo de riesgos determina qué orígenes de datos contaminados se tratan como un riesgo para la aplicación. Durante la versión preliminar pública, los modelos de riesgos solo son compatibles con el análisis de Java/Kotlin y C#. Para obtener más información sobre los modelos de riesgos, consulta Incluir orígenes locales de datos contaminados en la configuración predeterminada.

Si el código base depende de una biblioteca o marco que no reconozcan las bibliotecas estándar incluidas con CodeQL, también puede ampliar la cobertura de CodeQL en la configuración predeterminada al usar paquetes de modelos CodeQL. Para obtener más información, consulta Extender la cobertura de CodeQL con paquetes de modelos codeQL en la configuración predeterminada.

Si necesitas cambiar cualquier otro aspecto de la configuración del code scanning, considera la posibilidad de crear una configuración avanzada. Para más información, consulta Establecimiento de la configuración avanzada para el examen del código.

Personalización de la configuración predeterminada existente

  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. En la fila “Análisis de CodeQL” de la sección “Code scanning”, selecciona y haz clic en Ver configuración de CodeQL.

  5. En la ventana “Configuración predeterminada de CodeQL", haz clic en Editar.

  6. Opcionalmente, en la sección "Lenguajes", selecciona o anula la selección de lenguajes para analizar.

  7. Opcionalmente, en la fila “Conjunto de consultas” de la sección “Configuración del escáner”, seleccione otro conjunto de consultas para ejecutarlo en el código.

  8. Opcionalmente, para usar ejecutores etiquetados, en la sección "Runner type" del cuadro de diálogo modal "CodeQL default configuration", selecciona Standard GitHub runner para abrir un menú desplegable y, a continuación, selecciona Labeled runner. A continuación, junto a "Runner label", escribe la etiqueta de un ejecutor auto-hospedado existente o de un ejecutor hospedado por GitHub. Para más información, consulta Establecimiento de la configuración predeterminada para el examen del código.

  9. (versión preliminar pública) Opcionalmente, en la fila "Modelo de riesgos" de la sección "Configuración del análisis", seleccione Orígenes remotos y locales.

  10. Para actualizar la configuración, así como ejecutar un análisis inicial del código con la nueva configuración, haz clic en Guardar cambios. Todos los análisis futuros usarán la nueva configuración.

Definición de las gravedades de alerta que provocan un error de comprobación de una solicitud de incorporación de cambios

Al habilitar code scanning en las solicitudes de incorporación de cambios, la comprobación solo produce un error si se detectan una o varias alertas de gravedad error, o gravedad critical de seguridad o high. La comprobación se realizará correctamente si se detectan alertas con gravedades inferiores o gravedades de seguridad. En el caso de los códigos base importantes, es posible que desees que code scanning compruebe si se producen errores cuando se detecten alertas, de modo que la alerta deba corregirse o descartarse antes de que se combine el cambio de código. Para obtener más información sobre los niveles de gravedad, consulta «Acerca de la gravedad de alerta y los niveles de gravedad de seguridad».

  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. En "Code scanning", en la sección "Reglas de protección", usa el menú desplegable para definir qué alertas deben provocar un error de comprobación. Elige un nivel para las alertas de tipo "Seguridad" y un nivel para todas las demás alertas.

Inclusión de orígenes locales de datos contaminados en la configuración por defecto

Note

Los modelos de riesgos se encuentran actualmente en versión preliminar pública y están sujetos a cambios. Durante la versión preliminar pública, los modelos de riesgos solo son compatibles con el análisis de Java/Kotlin y C#.

Si el código base solo considera que las solicitudes de red remota son posibles orígenes de datos contaminados, se recomienda usar el modelo de riesgos predeterminado. Si su código base considera que otros orígenes distintos de las solicitudes de red pueden contener datos contaminados, puede utilizar modelos de riesgos para añadir estos orígenes adicionales a su análisis de CodeQL. Durante la versión preliminar pública, puede añadir orígenes locales (por ejemplo: argumentos de la línea de comandos, variables de entorno, sistemas de archivos y bases de datos) que el código base puede considerar como orígenes adicionales de datos contaminados.

Puede editar el modelo de riesgos utilizado en una configuración de instalación predeterminada. Para obtener más información, consulta Personalización de la configuración predeterminada existente.

Extensión de la cobertura de CodeQL con paquetes de modelos de CodeQL en la configuración predeterminada

Note

Los paquetes de modelos de CodeQL y el editor de modelos de CodeQL se encuentran actualmente en versión preliminar pública y están sujetos a cambios. Los paquetes de modelos son compatibles con el análisis de C#, Java/Kotlin, Python, and Ruby.

Si usas marcos y bibliotecas que no reconocen las bibliotecas estándar incluidas con CodeQL, puedes modelar tus dependencias y ampliar el análisis de code scanning. Para más información sobre los lenguajes y marcos admitidos, consulte la documentación para CodeQL.

Para la configuración predeterminada, debe definir los modelos de las dependencias adicionales en paquetes de modelos CodeQL. Puede extender la cobertura en la configuración predeterminada con los paquetes de modelos CodeQL para repositorios individuales o a gran escala para todos los repositorios de una organización.

Para obtener más información sobre los paquetes de modelos de CodeQL y escribir el suyo propio, consulta Uso del editor de modelos de CodeQL.

Extensión de la cobertura de un repositorio

  1. En el directorio .github/codeql/extensions del repositorio, copie el directorio del paquete de modelos que debe incluir un archivo codeql-pack.yml y los archivos .yml que contengan modelos adicionales para las bibliotecas o los marcos que desee incluir en el análisis.
  2. Los paquetes de modelos se detectarán y usarán automáticamente en su análisis de code scanning.
  3. Si más adelante cambia la configuración para usar la configuración avanzada, los paquetes de modelos del directorio .github/codeql/extensions seguirán siendo reconocidas y usadas.

Extensión de la cobertura para todos los repositorios de una organización

Note

Si amplía la cobertura con los paquetes de modelos de CodeQL para todos los repositorios de una organización, los paquetes de modelos que especifique deben publicarse en el registro de contenedor GitHub Container registry y que sean accesibles para los repositorios que ejecutan variables de datos code scanning. Para más información, consulta Trabajar con el registro de contenedores.

  1. En la esquina superior derecha de GitHub, seleccione la foto del perfil y haga clic en Sus organizaciones.

  2. En el nombre de la organización, 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 las pestañas en el perfil de una organización. La pestaña "Configuración" se destaca en naranja oscuro.

  3. Haga clic en Seguridad de código y, a continuación, en Configuración global.

  4. Vaya a la sección “Code scanning”.

  5. Junto a “Expandir análisis de CodeQL”, haga clic en Configurar.

  6. Escriba referencias a los paquetes de modelos publicados que desea usar, uno por línea y, a continuación, haga clic en Guardar.

    Captura de pantalla de la vista “Expandir análisis de CodeQL” en la configuración de una organización.

  7. Los paquetes de modelos se detectarán y usarán automáticamente cuando code scanning se ejecute en cualquier repositorio de la organización con la configuración predeterminada habilitada.