Pular para o conteúdo principal

⚙️ Integração com Pipelines CI/CD

🌟 Objetivo

Garantir que as práticas de SBOM, SCA e governaça de dependências são aplicadas de forma automatizada e rastreável nos pipelines de build, teste e release das aplicações.

🚀 A automação destas práticas assegura aplicação consistente, deteção precoce de riscos e bloqueio controlado de releases com findings graves.


🛠️ Ações esperadas em pipelines CI/CD

Fase CI/CDAção esperadaResultado
BuildGeração automática de SBOM (ex: Syft, CycloneDX)Artefacto .json ou .xml versionado
Análise de segurançaExecução de SCA com scanner open source ou comercialRelatório de findings (SARIF/JSON/HTML)
ValidaçãoVerifica severidade dos findings e aplica policiesBlocker ou aviso + registo
ReleaseAnexa SBOM e findings ao artefacto finalRastreabilidade por versião

💡 Exemplos de integração (pseudocódigo)

steps:
- name: Generate SBOM
run: syft . -o cyclonedx-json > sbom.json

- name: Run SCA
run: grype sbom:sbom.json -o sarif > results.sarif

- name: Validate findings
run: ./scripts/validate-findings.sh results.sarif

Pode ser integrado em GitHub Actions, Azure DevOps, GitLab CI, Jenkins, etc.


🔐 Políticas de bloqueio (exemplos)

CritérioAção
CVSS >= 9.0 e não mitigadoBloqueia pipeline
Vulnerabilidade com exploit conhecidoRequer aprovação formal
Finding "medium" com patch disponívelGera aviso + tarefa

As regras podem ser mantidas num ficheiro versionado (policy.yaml) ou num sistema central.


🔧 Integração com backlog e rastreabilidade

  • Findings devem gerar automaticamente:
    • Tarefa em Jira/Azure DevOps
    • Associação ao commit/PR
    • Referência cruzada ao SBOM e artefacto de release

📄 Sugere-se uso de formatos como SARIF para permitir importação automática por IDEs e plataformas ALM.


🔒 Práticas recomendadas por risco

Risco da aplicaçãoPrática CI/CD obrigatória
L1 (baixo)Geração de SBOM + SCA leve (ex: npm audit)
L2 (médio)SCA formal + bloqueio de findings críticos
L3 (elevado)SBOM completo, SCA automatizado, registo e aprovação de exceções

🔗 Ligações com outros ficheiros

DocumentoRelação com o pipeline
01-inventario-sbom.mdFonte de input obrigatória
02-analise-sca.mdScanner e validação integrados
09-excecoes-e-aceitacao-risco.mdControlo de findings com justificação documentada

🚀 A integração de SBOM e SCA em pipelines é a ponte entre teoria e execução. Assegura que as políticas definidas pela equipa de segurança são efetivamente aplicadas, auditáveis e repetíveis.