Перейти к содержимому
ecdsa.com

npm provenance (происхождение пакетов)

Подписанные сведения о происхождении SLSA, которые прикрепляются к пакетам npm, опубликованным из поддерживаемых CI-систем (функция общедоступна с 26 сентября 2023 года), и связывают каждую версию пакета с исходным репозиторием, коммитом и рабочим процессом сборки.
Другие написанияnpm provenancenpm publish --provenancenpm audit signatures

При публикации командой npm publish --provenance из GitHub Actions или GitLab CI (с доверенной публикацией, trusted publishing, это происходит автоматически) создаётся аттестация in-toto, подписанная сертификатом Sigstore на удостоверение рабочего процесса и записанная в Rekor; реестр хранит её и показывает бейдж происхождения. npm audit signatures проверяет подписи реестра и аттестации происхождения у установленных пакетов.

Сведения о происхождении доступны только для публичных пакетов, собранных из публичных репозиториев. Они не ручаются за сам код, и скомпрометированный рабочий процесс по-прежнему создаёт действительные сведения о происхождении, но украденный токен не позволит опубликовать «версию с подтверждённым происхождением» откуда-то ещё. Проверка происхождения npm показывает аттестацию версии пакета и её источник.

Стандарты и ссылки

Все термины