NuGet团队宣布推出NuGet 6.7,该更新引入了一组先进的安全功能。这些增强功能包括更新的包源映射、整合漏洞API、更新的包版本下拉菜单以及添加警告消息以解决信任链问题。
在NuGet 6.7的核心是对包源映射的优化方法。现在,如果NuGet包没有正确映射到指定的包源,开发人员会立即收到警报。与这些警报一起,还有一个"配置"链接,引导开发人员快速调整他们的NuGet.config包源映射,增强了控制和安全性。
使用NuGet 6.7,包源映射的管理变得更加直观。通过"工具" > "选项" > "NuGet包管理器" > "包源映射"菜单,开发人员可以获得一个集中管理所有映射的空间。
NuGet 6.7还引入了NuGet.Protocol中的新的VulnerabilityInfo API。该API嵌入在V3协议中,为开发人员提供了丰富的包漏洞信息。在还原操作过程中,这将特别有价值,以满足全面的漏洞评估需求,确保开发人员在集成新包时能够做出明智的选择。
正如 5 月份宣布 .NET 8 Preview 4时所报道的那样,启用安全审核的过程可以通过以下方式完成:
“At any time you wish to receive security audit reports, you can opt-in to the experience by setting the following MSBuild property in a .csproj or MSBuild file being evaluated as part of your project:
<NuGetAudit>true</NuGetAudit>
Additionally, ensure that you have the NuGet.org central registry defined as one of your package sources to retrieve the known vulnerability dataset:
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>”
此外,NuGet 6.7还为开发人员提供了预选洞察的功能,旨在检测漏洞。在使用Visual Studio中的版本选择器选择软件包版本之前,用户现在可以评估与其选择相关的潜在漏洞。
NuGet 6.7坚定不移地关注信任,为Linux和macOS用户引入了新的警告消息。这包括一个新的警告NU3042,补充现有的NU3018/NU3028警告。这个动态警告系统识别不可信的证书链问题,并在这些平台上提供可操作的指导。
“The following X.509 root certificate is untrusted because it is not present in the certificate bundle at <file-path>. For more information, see documentation for NU3042.
Subject: <certificate subject>
Fingerprint (SHA-256): <certificate fingerprint>
Certificate (PEM):
<PEM-encoded certificate>”
最后,在功能方面,NuGet 6.7是一个重要的发布版本,重新定义了安全包管理的标准。