最新消息:关注人工智能 AI赋能新媒体运营

Node.js v20.18.0长期支援版本释出,强化安全性与网路监控功能

科技智能 admin 浏览 评论

Node v20.18.0是最新的长期支援版本,带来实验性与正式多项功能更新。正式功能包括tls.createSecureContext新支援部分信任链新选项,以及vm.createContext()新增可冻结全域物件的选项,提升程序的安全性和效能。而实验性功能则添加了网路检查工具,开发者可以透过开启指定旗标,检视应用程序的网路活动,进一步了解网路通讯状况。

Node.js v20.18.0更新提供开发者更多灵活性和安全性,特别是在网路通讯和JavaScript执行环境方面。Node.js中用于建立安全连线的重要API tls.createSecureContext,在这次更新中新增了allowPartialTrustChain选项,让开发者可以将信任的CA清单中的中继凭证视为可信任,即便这些凭证并非自签章(Non-Self-Signed)。

这项变更对于处理信任链非常重要的原因在于,就算是无法获得完整的信任链,开发者仍可以透过设定allowPartialTrustChain:true来接受部分信任的中继凭证,让应用程序在不同环境中建立安全连线时更具弹性。

另外,Node.js用来建立隔离执行环境,执行第三方或不信任的程序码,以确保不会影响主应用程序全域状态的方法vm.createContext(),在这次更新增加了一个能创建可冻结全域物件的新选项。该选项让开发者可以建立一个没有拦截器的全域物件,并进一步将其冻结。

拦截器是一种用于监控和控制全域物件的操作机制,避免第三方程序码对全域物件进行未授权的修改。新的选项取消这层监控直接冻结全域物件,确保全域物件的不可变性以提高安全性,同时加快全域物件的存取速度,适合不需要拦截器行为的应用情境。

在网路检查工具方面,Node.js v20.18.0新增的实验性功能,让开发者可以使用--experimental-network-inspection旗标,监控应用程序中的网路活动。目前该功能仅支援http和https模组,并且还在持续开发中。目前该功能只能在Node.js自身环境使用,Chrome DevTools中的Network标籤尚未支援,未来将会随着Chrome DevTools团队的开发而加入。

发表我的评论
取消评论

表情

您的回复是我们的动力!

  • 昵称 (必填)
  • 验证码 点击我更换图片

网友最新评论