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?

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

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. En las configuraciones predeterminadas existentes, puedes editar lo siguiente:

  • 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, consulte “Conjuntos de consultas codeQL”.
  • Los modelos de riesgos (beta) que se van a utilizar 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 beta, 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, consulte "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, consulte "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 obtener más información, consulta “Establecimiento de la configuración avanzada del examen de código con CodeQL”.

Personalización de la configuración predeterminada existente

  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. 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. (Beta) Opcionalmente, en la fila "Modelo de riesgos" de la sección "Configuración del escáner", seleccione Orígenes remotos y locales.

  9. 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 causan un error de comprobación para una solicitud 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.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, haga clic en Análisis y seguridad del código.

  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

Nota: Los modelos de riesgos están actualmente en versión beta y están sujetos a cambios. Durante la versión beta, 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 beta, 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, consulte “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

Nota: Los paquetes de modelos de CodeQL y el editor de modelos de CodeQL se encuentran actualmente en versión beta y están sujetos a cambios. Durante la versión beta, los paquetes de modelos solo son compatibles con el análisis de C#, Java/Kotlin y Ruby.

Si usa marcos y bibliotecas que no reconocen las bibliotecas estándar incluidas con CodeQL, puede modelar las 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, consulte “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

Nota: Si extiende 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 Container registry de GitHub y ser accesibles para los repositorios que ejecutan el análisis de código. Para obtener más información, vea «Configurar la visibilidad y el control de accesos de un paquete».

  1. En la esquina superior derecha de GitHub.com, selecciona la foto de perfil y luego haz clic en Sus organizaciones.

    Captura de pantalla del menú desplegable en la imagen de perfil de @octocat. "Sus organizaciones" se destaca en naranja oscuro.

  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 y análisis del código.

  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.