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

向Azure DevOps推送NuGet包遇认证及SSL连接错误求助

解决NuGet推送Azure DevOps时的SSL/认证/超时问题

排查与修复方案

  • 修复SSL连接故障
    错误核心是SSL连接无法建立,先做以下检查:

    1. 验证Azure DevOps NuGet源的SSL证书:用浏览器访问你的源地址(如https://pkgs.dev.azure.com/xxx/_packaging/xxx/nuget/v3/index.json),若浏览器提示证书异常,需更新系统根证书库,安装缺失的根证书(比如DigiCert Global Root CA这类常见的Azure相关证书)。
    2. 处理代理拦截:若使用代理,确认代理允许访问Azure DevOps域名。可在NuGet.Config(路径%appdata%\NuGet\NuGet.Config)中添加代理配置:
      <configuration>
        <config>
          <add key="http_proxy" value="http://你的代理地址:端口" />
          <add key="https_proxy" value="http://你的代理地址:端口" />
        </config>
        <!-- 若代理需要认证,追加以下配置 -->
        <add key="proxy_username" value="用户名" />
        <add key="proxy_password" value="密码" />
      </configuration>
      
  • 重置凭据与缓存
    即便已删除通用凭据、重装凭据管理器,仍可尝试:

    1. 清空NuGet本地缓存:执行命令
      dotnet nuget locals all --clear
      
    2. 手动添加带凭据的源:用Azure DevOps的个人访问令牌(PAT)重新配置源,PAT需具备**包装(Packaging)**的推送权限:
      dotnet nuget add source "你的源地址" --name "XXX" --username "任意字符串" --password "你的PAT令牌"
      
    3. 重装凭据提供程序:删除%LOCALAPPDATA%\Microsoft\CredentialProvider目录,再执行安装命令:
      Install-Package CredentialProvider.Microsoft -Source https://api.nuget.org/v3/index.json
      
  • 修正超时配置
    报错显示超时时间异常(-0.001秒),可通过两种方式解决:

    1. 在推送命令中指定更长超时:
      dotnet nuget push --source "XXX" --api-key az "XXXX.nupkg" --timeout 600
      
    2. 检查NuGet.Config是否存在错误的超时配置,若有则删除或修正:
      <configuration>
        <config>
          <!-- 删除或修正类似下面的错误配置 -->
          <add key="httpTimeout" value="-1" />
        </config>
      </configuration>
      
  • 升级.NET SDK
    旧版.NET SDK可能存在NuGet凭据或SSL连接的bug,升级到最新稳定版后再尝试推送。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 17:57:25