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

Mac连接Azure Artifacts执行npm install报401如何配置.npmrc

Mac 环境连接 Azure Artifacts 执行 npm install 报401错误的解决方案

先清理无效旧配置

  • 同时检查两个位置的.npmrc文件:项目根目录下的.npmrc、用户根目录下的~/.npmrc,删除所有和Azure Artifacts源相关的过期_authToken、旧auth配置,避免残留配置优先级覆盖新配置。
  • 卸载之前安装的better-vsts-npm-auth,该工具未适配新版Azure DevOps的鉴权链路,生成的token大概率无效。

按规范配置两层.npmrc

Azure Artifacts 要求项目级、用户级两个.npmrc配合使用,配置错误是401错误的最常见诱因:

  • 项目根目录的.npmrc仅配置源地址,不要写入token信息,必须开启always-auth配置,参考格式:
registry=https://<你的组织名>.pkgs.visualstudio.com/<你的项目名>/_packaging/<你的源名称>/npm/registry/
always-auth=true

Mac环境下npm默认不会在请求私有源时自动携带凭据,缺少always-auth=true配置会直接触发鉴权失败。

  • 所有鉴权凭据统一存放在用户目录的~/.npmrc中,不要把token提交到项目代码仓库。

用官方链路生成有效鉴权token

不要使用第三方认证工具,直接通过Azure CLI生成凭据,兼容性最高:

  1. 安装Azure CLI后,终端执行az login,在弹出的浏览器窗口中完成账号登录,确认登录账号对目标Artifacts源拥有至少「协作者」权限,访客权限无法拉取包。
  2. 安装Azure DevOps扩展:执行命令az extension add --name azure-devops
  3. 执行凭据写入命令,替换成你自己的源地址:
az artifacts npm login --registry https://<你的组织名>.pkgs.visualstudio.com/<你的项目名>/_packaging/<你的源名称>/npm/registry/
  1. 命令执行完成后,检查~/.npmrc已经自动写入对应源的_authToken配置,回到项目目录重新执行npm install即可。

剩余问题排查

如果完成以上操作还是报Bearer鉴权错误,逐一排查以下点:

  • 本地npm版本如果是9.x,存在Mac端Azure Artifacts鉴权兼容bug,降级到npm 8.x版本后重新走认证流程。
  • 临时关闭系统代理、终端代理,部分代理会篡改请求的Authorization头,抹掉token信息导致鉴权失败。
  • 核对源地址拼写,Azure Artifacts分组织级源、项目级源,地址拼接错误时即使token有效也会返回401。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 21:09:30