作 者:Myles Borins(GitHub)、Jordan Harband(独立作者)、Jeff Mendoza(Google)、Erez Rokah (CloudQuery), Laurent Simon (Google), Liran Tal (Snyk), Randall T. Vasquez (Gentoo)
译者:龙文选

我们很高兴地宣布,专注于npm的依赖性管理和供应链安全的指南《npm最佳实践》V1版正式发布。本指南由OpenSSF最佳实践工作小组创作,是帮助JavaScript和TypeScript开发者在开发项目中使用开源依赖组件时减少风险的关键步骤。
依赖其他开发者贡献项目,有助于加快开发时间、加速创新和打造充满活力的开源社区。特别是npm -- 服务于JavaScript和TypeScript项目的软件包生态系统 -- 已经成长到包含 210万个软件包,很多JavaScript项目依赖数十甚至上百的依赖包。npm是现存最大的软件包生态系统;事实上,npm生态系统被认为比其他大多数重要的编程语言生态系统的总和还要大。
依赖性使用软件包也会产生风险。一个简单的依赖性更新可以破坏一个依赖性项目。此外,像任何其他软件一样,依赖关系可能有漏洞或被劫持,影响使用它们的项目(1,2).然而,使用依赖关系的好处往往超过了缺点。因此,在使用(和维护)依赖关系时,最好有一个经过深思熟虑的安全策略。但是,制定这样的策略可能具有挑战性,因为它们带来了与大多数开发人员所熟悉的问题不同的一组问题。在OpenSSF的推动下,一些npm社区成员和安全专家走到了一起,制定了这些准则,使npm社区受益。
这份新的《npm最佳实践》指南旨在帮助面临依赖性问题的开发者和组织,使他们能够更有信心地使用依赖组件。该指南介绍了npm中可用的供应链安全功能的概述,描述了与使用依赖关系有关的风险,并阐述了在不同项目阶段减少这些风险的最佳做法。例如,该指南涵盖了如何设置安全的CI配置,如何避免依赖关系的混乱,以及如何限制被劫持的依赖关系的后果。遵循本指南的开发者将主动加固他们的npm软件包,以防止最常见的供应链攻击。我们也希望自动化工具如 Scorecards 和 Allstar 将采用这些准则。
欢迎阅读该指南,学习里面介绍的做法,分享给您的朋友们和同事们,并提出改进建议。
点击 【阅读原文】 浏览英文版内容
OpenSSF开源安全基金会
OpenSSF开源安全基金会由Linux基金会于2020年8月成立,是一个跨行业的国际开源安全合作组织,汇集了业界最重要的开源安全倡议以及支持这些倡议的个人和公司。它结合了Linux基金会为应对2014年Heartbleed漏洞而成立的核心基础设施倡议(CII)和Github全实验室成立的开源安全联盟,以建立一个开源安全社区来应对未来几十年的开源安全需求。OpenSSF致力于合作,并与上游和现有开源社区合作,为所有人推进开源安全。
任何人都可以为开源安全基金会作出贡献。您可以通过访问:https://openssf.org/getinvolved/ 和 https://github.com/ossf 参与其中。了解更多有开源安全的资讯。请长按以下二维码进行关注。

