Skip to main content

Configurar la integración de GitLab con Corgea

La integración de GitLab permite conectar repositorios con las funciones de escaneo y remediación de vulnerabilidades de Corgea. Puedes escanear automáticamente el código de las merge requests y recibir comentarios detallados con los hallazgos y las correcciones sugeridas. También puedes añadir repositorios de GitLab mediante Dropsite y crear merge requests directamente desde Corgea para corregir los hallazgos detectados.

Requisitos previos

Antes de configurar la integración de GitLab, asegúrate de tener lo siguiente:
  1. Una cuenta de Corgea
  2. Una cuenta de GitLab con un repositorio que quieres integrar

Configuración de la integración

1

Acceder a Integraciones

Inicia sesión en tu cuenta de Corgea y accede a la sección “Integraciones”.
2

Añadir integración con GitLab

Haz clic en el botón “Añadir integración” y selecciona “GitLab” de la lista de integraciones disponibles.
3

Configurar integración

En el formulario “Añadir integración con GitLab”, proporciona la siguiente información:
  • Nombre: Un nombre descriptivo para tu integración con GitLab.
  • URL de GitLab: La URL base de tu instancia de GitLab (por ejemplo, https://gitlab.com o https://gitlab.example.com para una instancia autoalojada).
  • Secure Token: Un token de acceso personal con los permisos necesarios para acceder al repositorio de GitLab. Puedes generar uno nuevo siguiendo la documentación de GitLab.
  • Solo listar proyectos miembros: Esta opción está habilitada de forma predeterminada y limita la selección a los proyectos de los que es miembro el propietario del token. Desactívala para incluir otros proyectos a los que pueda acceder, como proyectos públicos o disponibles mediante permisos de administrador o auditor.
  • Comentar sobre solicitudes de fusión: Marca esta opción para que Corgea comente automáticamente las merge requests con las vulnerabilidades detectadas y las correcciones sugeridas.
4

Guardar configuración

Haz clic en “Guardar” para crear la integración de GitLab.

Configuración de GitLab

Para que Corgea pueda escanear tus repositorios y comentar las solicitudes de fusión, tendrás que configurar algunos ajustes en GitLab:
1

Crear un token de acceso

Recomendación: Crea un usuario específico para Corgea en GitLab, de modo que los comentarios y las merge requests aparezcan como enviados por Corgea.Opción 1: Token de acceso personal (usuario de Corgea)
  1. Crea una cuenta de GitLab llamada “Corgea” o similar
  2. Inicia sesión con esa cuenta
  3. Ve a Configuración de usuario > Tokens de acceso
  4. Crea un token nuevo con los siguientes ámbitos:
    • api (Acceso API de lectura/escritura)
    • read_api
    • read_repository
    • write_repository
  5. Copia el token generado: lo necesitarás para la configuración de integración con Corgea
Opción 2: Token de acceso al grupo
  1. Ve a la sección de Configuración > Tokens de acceso de tu grupo
  2. Crea un token de acceso al grupo con los mismos ámbitos indicados anteriormente
  3. Este token se aplicará a todos los proyectos del grupo
  4. Copia el token generado: lo necesitarás para la configuración de integración con Corgea
2

Configurar el webhook

Para el webhook a nivel de proyecto:
  1. Ve a la sección de Configuración > Webhooks de tu proyecto
  2. Añade un webhook con esta configuración:
    • URL: https://www.corgea.app/gitlab_webhook/ (o la URL del webhook que proporciones)
    • Cabecera personalizada: Añade X-Corgea-UUID con el valor de Integraciones > GitLab > Ver todo
    • Selecciona los desencadenadores:
      • Eventos de solicitud de fusión
      • Comentarios
  1. Haz clic en “Añadir webhook”
Para el webhook a nivel de grupo:
  1. Ve a la sección de Ajustes > Webhooks de tu grupo
  2. Sigue los mismos pasos que antes
  3. El webhook se aplicará a todos los proyectos del grupo
3

Verificar configuración

  1. Crea una merge request de prueba
  2. Comprueba que Corgea reciba el webhook y comente la merge request
  3. Revisa las entregas recientes del webhook en GitLab para confirmar que la comunicación funciona

Añadir repositorios desde GitLab usando el Dropsite

1

Acceso al Dropsite

Inicia sesión en tu cuenta de Corgea y accede a la sección de Dropsite.
2

Seleccionar método de conexión

En el paso “Añadir tu código”, selecciona la opción “Conectar Corgea”.
3

Elige GitLab

Elige la integración “GitLab” de la lista de integraciones disponibles.
4

Seleccionar repositorio

Selecciona el repositorio y la rama que quieres escanear desde tu cuenta de GitLab.
5

Iniciar escaneo

Haz clic en “Confirmar” para iniciar el escaneo.
Corgea recuperará el código del repositorio y rama seleccionados, y realizará un escaneo de seguridad exhaustivo.

Crear merge requests desde Corgea

Cuando Corgea detecta un hallazgo de seguridad y genera una corrección, puedes crear una merge request directamente desde la página de detalles del hallazgo:
  1. Ve a la página de detalles del hallazgo que quieras corregir
  2. Busca la opción “Issue MR” en el menú desplegable
  3. Haz clic en “Issue MR” para que Corgea realice automáticamente estas acciones:
    • Crear una rama a partir de la rama base configurada
    • Hacer commit de la corrección con un mensaje descriptivo
    • Crear una merge request con los cambios
    • Añadir un comentario detallado que explique la vulnerabilidad y la corrección, si esta opción está habilitada
El enlace a la merge request aparecerá en la página de detalles del hallazgo. A continuación, puedes seguir el flujo de trabajo habitual de GitLab para revisar y fusionar los cambios.

Cómo funciona la integración

Una vez configurada la integración con GitLab, Corgea escaneará automáticamente tu código en busca de vulnerabilidades cada vez que se cree o actualice una nueva solicitud de fusión. Así es como funciona la integración:
  1. Cuando se crea o actualiza una solicitud de fusión en tu repositorio de GitLab, Corgea recibe una notificación de webhook de GitLab.
  2. Corgea recupera los cambios de código de la solicitud de fusión y realiza un escaneo de seguridad exhaustivo.
  3. Si se detectan vulnerabilidades, Corgea publica un comentario en la merge request con los hallazgos y las correcciones sugeridas. Los comentarios solo se añaden a líneas incluidas en el diff de la merge request. En los hallazgos que abarcan varias líneas, Corgea ancla el comentario a la primera línea modificada del intervalo afectado.
  4. Puedes revisar los comentarios y aplicar las correcciones sugeridas antes de fusionar el código.

Beneficios de la integración con GitLab

Al integrar Corgea con tu repositorio de GitLab, puedes disfrutar de los siguientes beneficios:
  • Escaneo automatizado de seguridad: Corgea escanea automáticamente el código de las merge requests para detectar las vulnerabilidades al principio del ciclo de desarrollo.
  • Informes detallados de vulnerabilidades: Corgea proporciona información detallada sobre vulnerabilidades identificadas, incluyendo su gravedad, ubicación e impacto potencial.
  • Correcciones sugeridas: Corgea no solo identifica vulnerabilidades, sino que también propone correcciones para remediarlas con rapidez.
  • Integración fluida: La integración se incorpora al flujo de desarrollo existente, reduce las interrupciones y facilita la revisión de seguridad.
  • Mejora de la calidad del código: Al abordar vulnerabilidades de seguridad al principio del ciclo de desarrollo, puedes mejorar la calidad y seguridad general de tu base de código.
  • Opciones flexibles de escaneo: Además del escaneo automático de solicitudes de fusión, puedes usar la función Dropsite para escanear repositorios de GitLab bajo demanda.
  • Aplicación de correcciones con un solo clic: Crea merge requests directamente desde la página de detalles del hallazgo para aplicar las correcciones con un esfuerzo mínimo.
La integración de GitLab y Dropsite permiten mejorar la seguridad de las aplicaciones, agilizar el desarrollo y ofrecer software más seguro y fiable.