配置Jenkins对接Azure DevOps Git仓库拉取代码报403错误如何解决?
排查解决步骤
- 验证PAT(个人访问令牌)有效性
- 确认PAT未过期,创建时选择的所属组织与目标Azure DevOps组织完全一致
- 确认PAT权限范围已明确勾选
Code > Read,若构建任务涉及标签拉取、代码提交等操作,需对应勾选更高的代码操作权限 - 注意:Azure DevOps使用PAT做密码认证时,用户名可填写任意非空值,推荐直接填
PAT作为用户名,避免用户名填写错误导致认证失败
- 检查Jenkins凭据配置
- 确认存储的凭据类型选择为「用户名 with password」,密码字段填写的是完整的PAT字符串,没有多余空格、换行或特殊符号
- 确认构建任务的Git SCM配置中,已选中对应存储的凭据,而非使用全局默认凭据或其他不相关凭据
- 清理构建节点的旧Git凭据缓存
- 报错中显示使用的是Windows节点的
git.exe,需登录到对应Jenkins构建节点,打开Windows凭据管理器,删除所有目标Azure DevOps域名对应的缓存凭据,避免本地留存的旧凭据覆盖Jenkins传入的认证信息
- 报错中显示使用的是Windows节点的
- 本地验证连通性
- 在Jenkins构建节点本地手动执行带认证信息的Git拉取命令,验证权限和网络连通性:
git fetch --tags --force --progress -- https://<你的用户名>:<你的PAT>@xxxx.com/_git/xxxx +refs/heads/*:refs/remotes/origin/*- 若上述命令执行失败,首先排查节点网络是否有防火墙、代理拦截了Azure DevOps访问请求
- 若命令返回403,同时确认Azure DevOps组织/项目是否配置了IP访问限制,需将Jenkins构建节点的公网IP加入允许访问白名单
- 升级相关组件版本
- 升级Jenkins Git插件到最新稳定版,同时升级构建节点的Git客户端到2.30以上版本,避免旧版本对PAT认证存在兼容性问题
内容的提问来源于stack exchange,提问作者dbmoyal
相关产品推荐
相关产品推荐

