You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从GitHub包管理器还原NuGet包出现403错误,求解决办法

解决GitHub私有NuGet包403禁止访问的额外方案

以下是可尝试的排查与解决步骤:

  • 检查PAT权限范围:确保新生成的PAT勾选了read:packages权限,若包存于组织仓库,还需确认PAT拥有该组织对应仓库的读取权限(如组织的repo权限或特定仓库权限),不要仅勾选NuGet相关权限,仓库本身的访问权限也会影响包的获取。
  • 修正NuGet.Config源地址:你的错误日志中源地址包含了具体包名(/download/MyPackage/),这是错误的格式。正确的GitHub私有NuGet源地址应为https://nuget.pkg.github.com/MyCompany/index.json,需修改NuGet.Config中的源地址,移除多余的包名路径。同时检查配置文件中的账号和PAT是否正确,标准配置示例:
    <packageSources>
      <add key="GitHub" value="https://nuget.pkg.github.com/MyCompany/index.json" />
    </packageSources>
    <packageSourceCredentials>
      <GitHub>
        <add key="Username" value="你的GitHub用户名" />
        <add key="ClearTextPassword" value="你的PAT" />
      </GitHub>
    </packageSourceCredentials>
    
  • 命令行手动测试还原:进入项目目录,执行dotnet restore --force --verbosity detailed,查看详细输出中的具体错误提示,定位是权限、地址还是网络问题。
  • 检查GitHub包的访问权限:登录GitHub,进入组织的Packages页面或对应仓库的Packages板块,确认你的账号(或PAT关联的账号)被添加到了该NuGet包的读取权限列表中,组织级别的包可能需要单独配置成员访问权限。
  • 排查网络环境:若使用代理或防火墙,尝试切换至无代理网络(如手机热点)测试,或确认代理设置已正确配置到NuGet中。
  • 重置Visual Studio包源配置:若使用Visual Studio,进入工具>选项>NuGet包管理器>包源,删除现有GitHub源后重新添加,手动输入用户名和PAT,避免依赖系统凭据。
  • 确认PAT有效期:检查新生成的PAT是否设置了过期时间,若有则确认未过期。

补充:若为组织仓库,需确认组织未启用IP限制,当前IP在允许访问的范围内。

内容的提问来源于stack exchange,提问作者Michael Witt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 01:44:54