Zum Inhalt springen
ecdsa.com

npm-Provenance

Signierte SLSA-Provenance, die an npm-Pakete angehängt wird, wenn sie aus einer unterstützten CI veröffentlicht werden (allgemein verfügbar seit dem 26. September 2023), und die jede Paketversion mit ihrem Quell-Repository, Commit und Build-Workflow verknüpft.
Auch geschrieben alsnpm provenancenpm publish --provenancenpm audit signatures

Das Veröffentlichen mit npm publish --provenance (beim Trusted Publishing automatisch) aus GitHub Actions oder GitLab CI erzeugt eine in-toto-Attestierung, die mit einem Sigstore-Zertifikat für die Identität des Workflows signiert und in Rekor protokolliert wird; die Registry speichert sie und zeigt ein Provenance-Badge an. npm audit signatures prüft Registry-Signaturen und Provenance-Attestierungen installierter Pakete.

Provenance gibt es nur für öffentliche Pakete, die aus öffentlichen Repositorys gebaut werden. Für den Code selbst bürgt Provenance nicht, und ein kompromittierter Workflow erzeugt weiterhin gültige Provenance; sie verhindert aber, dass ein gestohlenes Token von anderswo eine Version „mit Provenance“ veröffentlicht. Der npm-Provenance-Checker zeigt die Attestierung einer Paketversion und ihre Quelle.

Standards und Quellen

Alle Begriffe