Azure Devops Server无法识别可信域 如何添加域外用户?
可信域无法被Azure DevOps Server 2019识别的常见原因
- 服务账户权限不足:Azure DevOps后台服务的运行账户没有可信域的目录读取权限,Windows层面能识别域是因为本地系统账户有权限,但DevOps的服务运行账户默认可能没有跨域查询权限
- 域信任类型不支持:如果配置的是单向外部信任,或者林信任没有启用全局编录同步,DevOps默认会从当前域的全局编录查询用户,跨域查询需要信任关系支持双向传递,或者显式将目标域加入DevOps的域搜索列表
- 后台同步任务未正常运行:Azure DevOps的身份同步作业(Identity Sync Job)运行异常,没有拉取最新的域信任信息
- 防火墙/端口限制:DevOps服务器到可信域的域控制器的389(LDAP)、3268(全局编录)端口未放行,导致查询请求被拦截
接入可信域用户的解决方案
1. 验证并配置服务账户权限
- 在Azure DevOps管理控制台找到配置的服务运行账户,确认该账户属于目标可信域的
Authenticated Users组,或者被分配了目标域的LDAP读取权限 - 使用该服务账户登录DevOps服务器,手动打开运行窗口输入
lusrmgr.msc尝试搜索目标域用户,如果此处也无法搜索,优先解决域权限问题
2. 显式添加可信域到DevOps搜索列表
- 打开Azure DevOps Server 2019管理控制台,点击左侧的
应用层节点 - 找到
管理安全性选项下方的域选项卡,点击添加 - 输入目标可信域的NetBIOS名称或者FQDN,按照提示完成域添加
- 重启
Azure DevOps Job Agent服务触发身份同步
3. 检查域信任与端口配置
- 确认域信任为双向传递信任,如果是单向信任,需要在DevOps服务账户所在域和目标可信域之间配置允许LDAP查询的入站规则
- 验证DevOps服务器到目标域控制器的以下端口已放行:
- 389(TCP/UDP,LDAP查询)
- 3268(TCP,全局编录查询)
- 53(TCP/UDP,DNS解析,确保能正常解析目标域的SRV记录)
4. 手动触发身份同步作业
- 打开DevOps关联的SQL Server实例,连接到配置数据库(默认名称为
Tfs_Configuration) - 执行以下命令触发即时同步:
EXEC prc_QueueSyncJob @jobId = '544DD58B-F52F-442E-93A9-1B3A1F2E7D6C', @priorityLevel = 1
- 等待5-10分钟后再回到管理控制台尝试搜索目标域用户
内容的提问来源于stack exchange,提问作者Aram Gevorgyan
相关产品推荐
相关产品推荐

