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

Visual Studio连接Artifactory NuGet源失败报403并导致AD账号锁定

Visual Studio 对接 Artifactory NuGet 仓库403并锁AD账号解决方案

根因判定:Rider配置生效说明你的账号权限、Artifactory服务端配置、仓库地址均无异常,问题完全出在Visual Studio的NuGet身份验证缓存、凭证配置逻辑上,可按以下步骤逐一排查修复:

  • 第一步:清除Visual Studio所有缓存的NuGet凭证
    打开Windows凭据管理器(直接搜索凭据管理器),切换到「Windows凭据」分类,删除所有名称包含nuget、你的Artifactory域名、VSCredentials_前缀的相关凭证,避免VS自动调用过期/错误的凭证反复发起认证请求。
  • 第二步:修正NuGet配置文件
    找到NuGet全局配置文件,路径默认是%APPDATA%\NuGet\NuGet.Config,打开后确认你的Artifactory源配置符合以下格式:
    <packageSources>
      <add key="你的Artifactory源名称" value="你的Artifactory NuGet仓库地址" />
    </packageSources>
    <packageSourceCredentials>
      <你的Artifactory源名称>
        <add key="Username" value="你的AD账号用户名" />
        <add key="ClearTextPassword" value="你的Artifactory/AD账号密码" />
      </你的Artifactory源名称>
    </packageSourceCredentials>
    
    注意:源名称在packageSources和packageSourceCredentials节点下必须完全一致,大小写也要匹配,VS对这个配置的大小写敏感,Rider默认会做兼容处理,这也是两者表现不一致的最常见原因
  • 第三步:禁用Visual Studio的默认身份验证协商逻辑
    如果你使用的是Visual Studio 2022及以上版本,默认会自动尝试用Windows集成身份验证对接私有源,会优先发送当前Windows登录的身份信息而非你配置的凭证,直接在NuGet.Config的对应源配置节点下添加authenticationmode="basic"即可强制走基础认证:
    <add key="你的Artifactory源名称" value="你的Artifactory NuGet仓库地址" authenticationmode="basic" />
    
  • 第四步:验证配置生效
    关闭所有Visual Studio窗口,打开新的PowerShell窗口执行dotnet nuget list source确认源配置正常,再执行dotnet restore测试拉包,没有错误后再打开Visual Studio执行还原操作,避免VS直接发起请求导致账号被锁。

临时规避方案:排查阶段如果怕AD被锁,可以先在Artifactory后台生成对应账号的访问令牌,替换配置中的密码字段,令牌失效不会影响AD账号状态。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 20:15:03