Saltar al contenido principal

Wiedii — Política de Escáneres de Seguridad y Calidad

Todo proyecto debe integrar al menos un escáner en CI/CD.

Escáneres requeridos

HerramientaPropósitoInstalación
SnykVulnerabilidades en dependenciasmise use aqua:snyk/snyk@latest
TrivySeguridad en contenedores e IaCmise use aqua:aquasecurity/trivy@latest
SonarQube self-hostedCalidad de código integralIntegración via GitLab CI
OWASP Dependency-CheckEscaneo de CVEsPipeline CI

Quality gates (ningún MR se fusiona si algún gate falla)

GateUmbral
Cobertura de tests≥ 70% para proyectos nuevos
Bugs bloqueantes0 permitidos para deploy a producción
Duplicación de código≤ 3%
Vulnerabilidades críticas/altas0 permitidas para deploy a producción
Code smells mayoresSeveridad máxima permitida

Trivy en GitLab CI

security:trivy:
stage: test
script:
- mise exec -- trivy fs --exit-code 1 --severity CRITICAL,HIGH .
allow_failure: false

Snyk en GitLab CI

security:snyk:
stage: test
variables:
SNYK_TOKEN: $SNYK_TOKEN # variable de proyecto — masked + protected
script:
- mise exec -- snyk test --severity-threshold=high
allow_failure: false

SonarQube self-hosted en GitLab CI

sonarqube:
stage: test
image: sonarsource/sonar-scanner-cli:latest
variables:
SONAR_HOST_URL: $SONAR_HOST_URL # https://sonar.wiedii.internal
SONAR_TOKEN: $SONAR_TOKEN
script:
- sonar-scanner -Dsonar.projectKey=$CI_PROJECT_PATH_SLUG
allow_failure: false

Las variables SNYK_TOKEN, SONAR_TOKEN y SONAR_HOST_URL se configuran en GitLab → Settings → CI/CD → Variables (Masked + Protected). Para agregarlas, crear un request en Squadlinx al equipo de Infra.