微软宣布自 2026 年 8 月 17 日起,NuGet.org 平台新生成的 API 密钥有效期将由原来的最长 365 天缩短至 30 天。所有在 2026 年 8 月 17 日之前创建的现有密钥将于 2026 年 11 月 1 日统一过期。

安全策略调整背景
微软表示,此项变更旨在加强 NuGet 生态系统的供应链安全,降低长期凭证泄露带来的风险。该决定参考了近期 NX console NPM 包的凭证泄露事件——攻击者在窃取凭证后 36 分钟内恶意更新了该包并触发 6000 次下载。通过缩短密钥有效期,可大幅缩短潜在攻击窗口期。
推荐替代方案:Trusted Publishing
微软建议开发者迁移至 NuGet Trusted Publishing 机制。该功能于 2025 年 9 月上线,采用基于 OpenID Connect 的认证方式,通过验证短期身份令牌来签发临时 API 密钥。目前 GitHub Actions 和 GitLab 用户已可立即启用该功能。
开发者应对措施
选择继续使用 API 密钥的开发者需更新自动化工作流,以支持更频繁的密钥轮换周期,并确保权限范围最小化。对于计划手动发布包的用户,微软建议在 NuGet.org 网页界面直接操作。微软同时表示,未来若安全形势需要,可能进一步缩短密钥有效期,但低于 30 天可能会对开发者造成不便。
via Neowin