Pular para o conteúdo

Cadeia de suprimentos

Do pacote que se instala à imagem que se publica — o que é conferido, e em que ponto.

A cadeia de suprimentos é tudo que entra no seu programa sem ter sido escrito por você: pacotes, actions do CI, a imagem base, o próprio interpretador. Um ataque a ela alcança todo mundo que confia no elo — por isso cada elo precisa de uma conferência, e não de confiança.

EloA conferênciaOnde
o pacote instaladoo sha256 do forge.lock é comparado com o que chegoudataforge install
o pacote publicadotarball reprodutível (mtime=0, uid/gid zerados)dataforge pack
a extraçãorecusa ../ e link simbólico (Zip Slip)dataforge add
as actions do CIfixar por SHA do commit, e não por tago workflow
a imagem baseatualizada pelo Dependabot; USER sem privilégiodataforge devops github
o inventárioSBOM em CycloneDXdataforge devops sbom
o artefato em produçãomanifesto assinado da pastaArcane.Integridade
o que o código pode fazero adopt fora da lista é recusadoArcane.Capacidade
yaml
uses: actions/checkout@v4                                       # a tag pode ser MOVIDA
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683  # o commit nao
bash
dataforge install              # confere o sha256 de cada pacote contra o lock
dataforge outdated             # o que tem versao nova
dataforge devops sbom          # o inventario, para o scanner da empresa
dataforge seguranca . --strict # o segredo que entraria junto no pacote

Continue em Integridade e O lockfile.