Embodied Intelligence Observer

npm 终于动手了:默认封杀 postinstall 脚本

Industry

Source: InfoQ 中文Publish time unverified

由 GitHub 维护并随 Node.js 一同提供的软件包管理器 npm 发布了 npm 12"。该版本更改了 npm install 的一系列安全相关默认行为,同时弃用可以绕过双因素认证的细粒度访问令牌。 npm 12 将此前自动执行的三种安装行为改为需要开发者明确选择启用。这些更改于今年 6 月首次公布",并从 npm 11.16.0 开始通过警告形式提供,以便团队在升级前做好准备。 最重要的变化是 allowScripts 现在默认为关闭。依赖项的 preinstall、install 和 postinstall 脚本不再运行,除非项目明确允许它们运行。这也包括任何包含 binding.gyp 文件的软件包隐式执行的 node-gyp 构建,即使该软件包并未声明安装脚本。来自 Git、文件和链接依赖项的 prepare 脚本也会以相同方式被阻止。开发者可以审查等待运行的脚本,批准自己信任的脚本,然后将生成的允许列表提交到 package.json 中。 另外两项默认设置针对非注册表来源。--allow-git 现在默认为 none,关闭了一条代码执行路径:在这条路径中,即使设置…

npm 终于动手了:默认封杀 postinstall 脚本 | Embodied Intelligence Observer