我有一个问题,浪费了我很长的时间,没有一个可行的解决方案。我没有在Sharepoint方面的经验,而且可能我做得太过了,如果解决方案比我预期的简单得多,我也不会感到惊讶。
设想如下:
( 1)我们在客户端(A)安装了SharePoint。Client (A)环境包括测试、和产品环境。生产环境为每个WFE和床提供一个单独的服务器。测试环境由WFE &单一服务器中的床组成。这两种环境都在同一个域上。
2) Sharepoint版本为2013年。
( 3)客户(A)与客户(B)域建立了双向信任关系.
问题是: production可以成功地从域(B)抓取用户,而无需在PeoplePicker上进行任何配置。但是,测试Sharepoint PeoplePicker无法捕获域(B)信任用户。并与“无法找到精确匹配”错误失败。
我在测试环境中尝试了以下解决方案(在这个环境中,WFE和BEDS是并置的)来定位这个问题:
1-检查所有PeoplePicker相关属性(Peoplepicker-searchadcustomquery,Peoplepicker-onlysearchwithinsitecollection,Peoplepicker-searchad林,setsiteuseraccountdirectorypath等)什么都没有。此外,我在这两种环境(production & tester )上运行了人员选择端口测试器,以比较任何防火墙配置差异,尽管有些端口正在抱怨,并且UDP端口(445,135)之间存在差异,但我认为这不是问题,因为Wireshark (3)稍后会告诉我们为什么不可能。从我在互联网上看到的情况来看,在双向信任场景中,我不需要为人们配置任何东西,我仍然试图做单向信任配置,没有任何效果&我恢复了这些更改。
2-将Sharepoint配置为详细的日志记录(因为我不知道哪个组件负责PeoplePicker)收集日志,并搜索查询用户的日志。没有有用的信息,屏幕截图是附加从ULS查看器,用户是蒙面。
3收集Wireshark流量转储并由LDAP过滤。我可以清楚地看到,LDAP响应包含来自受信任用户的查询用户以及所有用户属性和域名。这就是为什么我排除了任何的人-选择过滤原因,域搜索限制或网络端口问题。截图附呈。
4-在排除了网络问题(因为LDAP查询成功返回到WFE )之后,我决定在在PeoplePicker中显示结果之前查看Sharepoint内部的流是如何进行的。如果找到微软的这文章,描述PeoplePicker工作流。从下图中,我可以得出结论,LDAP请求成功地通过了步骤1、2和3。我需要检查从4到11的步骤,即MS协议握手。我阅读了该协议,发现它由从WFE到read的一组存储过程调用组成。我试图通过使用Server和搜索(proc_GetTpWebMetadataAndListMetadata) & (proc_GetListMetadataAndEventReceivers)存储过程来调试协议,但一无所获。
5.我的一位朋友建议将UPSA (用户配置文件服务应用程序)连接到可信域(域B)活动目录,我授予Sharepoint服务用户对域B活动目录所需的权限,配置了连接并测试了同步,正如我从同步服务管理器中看到的那样,它确实加载了用户,但是PeoplePicker仍然失败。然而,我认为这一步是不必要的,因为据我所知,PeoplePicker和UPS没有关系,而且由于Production在不配置UPSA的情况下运行良好。有什么帮助吗?
发布于 2019-01-10 15:27:43
试着运行这个命令。stsadm -o setproperty -pn peoplepicker-searchadforests -pv“目录林:名称、域\serviceid、密码”-url https://webapplicationurl
增加多个森林分隔;
https://stackoverflow.com/questions/48439894
复制相似问题