GitHub 已宣布对 npm(节点包管理器)进行三项重大改进,旨在使该软件的使用更加安全和易于管理。

总之,新功能包括更简化的登录和发布体验、将 Twitter 和 GitHub 帐户链接到 npm 的能力,以及新的包签名验证系统。

同时,GitHub 宣布2022 年 5 月推出的双因素身份验证程序已准备好退出测试版,并可供所有 npm 用户使用。

npm

npm 平台是 GitHub 的子公司,是 JavaScript 编码器的包管理器和存储库(注册表),开发人员的项目使用它每天下载 50 亿个包。

它最近遭遇了影响数百个应用程序和网站的大规模安全事件,迫使 GitHub 制定并紧急实施安全提升计划。

npm 中的新功能

新的 npm 登录和发布系统允许由 Web 浏览器处理身份验证,因此有效的身份验证令牌可以在同一会话中保留长达五分钟。

减少摩擦的新登录系统

减少用户体验摩擦的新登录系统 (GitHub)

这一变化是为了减少引入 2FA 系统造成的摩擦,该系统迫使开发人员在每次操作时都输入新的一次性密码。

将 GitHub 和 Twitter 帐户连接到 npm 的新选项旨在帮助增加可信度并作为身份验证的一种形式,以便 npm 帐户不能冒充流行软件的创建者。

将 Twitter 链接到 npm 帐户

将 Twitter 链接到 npm 帐户 (GitHub)

此外,这个新系统应该有助于在需要时帮助恢复账户,使流程更可靠、更简单,并为未来实现更多自动化奠定基础。

最后,还有一个新的签名审计系统,它取代了之前的多步骤、复杂的 PGP 流程,让开发人员可以更轻松地验证 npm 包的签名。

用户现在可以使用 npm CLI 中的新“npm audit signatures”命令在本地验证包的来源。

新的包签名验证命令

新的包签名验证命令 (GitHub)

同时,该平台使用 ECDSA(椭圆曲线加密)算法对所有包进行重新签名,并使用 HSM 进行密钥管理,进一步增强了安全性。

重要帐户上的 2FA

保护 npm 注册表的下一步是对所有管理每周下载量超过一百万或有 500 个依赖项的软件包的帐户强制执行双重身份验证。

GitHub 表示,只有在通过额外的身份验证表格进一步改进帐户恢复流程后,才会强制执行此操作,因此除了接下来会执行之外,没有提供严格的时间表。

Tags: none

我有个想法