SharePoint Services 适配器疑难解答

本主题重点介绍如何对 Windows SharePoint Services (WSS) 适配器进行故障排除。

安装

使用 Windows SharePoint Services (WSS) 适配器时,有两个选项:

选项 DESCRIPTION
使用客户端 OM 设置为“是” 建议。 设置为“是”时,将使用 SharePoint Services 客户端对象模型(CSOM)。 安装 BizTalk Server 时,将安装适配器。 没有其他安装步骤。 注意: BizTalk Server 安装还会自动安装 SharePoint 客户端对象模型 Redistributable
使用客户端 OM 设置为 “否”。 已弃用。 使用 SharePoint Services 服务端对象模型(SSOM)。

Web 服务安装在 SharePoint Services 计算机上,它可以与 BizTalk Server 位于同一台计算机上,或者在单独的计算机上。

若要安装 Web 服务,请在 SharePoint Services 计算机上运行 BizTalk Server 安装并检查 Windows SharePoint Services 适配器。 请参阅 附录 B:针对特定安装步骤安装 Microsoft SharePoint 适配器

建议使用设置为“是”的客户端 OM。 设置为 “是”时,Web 服务不会安装在 SharePoint 计算机上。 如果想要使用 Web 服务选项,则必须在 BizTalk Server 上将 “使用客户端 OM ”设置为 “否 ”。

IIS

BTSharePointAdapterWS.asmx Web 服务

在 SharePoint 计算机上安装 Windows SharePoint Services 适配器时,BTSharePointAdapterWS.asmx Web 服务在 SharePoint 计算机上的 IIS 中创建。 通常,BizTalk Server 和 SharePoint 安装在不同的计算机上。 安装 SharePoint 后,内容 SQL 数据库可以位于 SharePoint 计算机或远程 SQL Server 上。

应用程序池使用域帐户

当 BizTalk 和 SharePoint 位于不同的计算机上时,运行 BTSharePointAdapterWS.asmx Web 服务的 IIS 应用程序池必须使用域帐户。 如果 BizTalk Server、BizTalk 数据库、SharePoint 服务和 SQL Server SharePoint 数据库都安装在同一台计算机上,则可以使用本地帐户。

Double-Hop 场景

当涉及到三台计算机(BizTalk Server、SharePoint Services 和 SQL Server)时,有一个需要 Kerberos 身份验证的双跳连接场景。 BizTalk 计算机上的 SharePoint 适配器对 SharePoint 计算机上的 BTSharePointAdapterWS.asmx Web 服务执行 POST 请求。 然后,SharePoint 计算机在 SQL Server 计算机上查询其数据库。

BizTalk 适配器的此 POST 请求必须成功完成。 如果怀疑身份验证失败,请查看 IIS 日志。 默认情况下,IIS 日志位于 c:\inetpub\logs\LogFiles\W3SVCx 中。 POST 请求应显示 200(成功)状态代码。 如果返回一个失败的状态代码(如 401.2),接着出现 401.1,然后是另一个 4xx 错误,那么身份验证可能会失败。

使用 Kerberos 身份验证时,需要服务主体名称(SPN),并且必须启用委派。

启用 Kerberos 身份验证

在涉及双跳连接的场景中,需要进行 Kerberos 身份验证并启用委托。 步骤包括:

  1. 在 IIS/SharePoint 服务器上启用 协商 。 有关详细信息,请转到 Windows 身份验证 <windowsAuthentication>

  2. 执行 SQL Server 服务和 IIS/SharePoint 计算机上的应用程序池的域帐户需要服务主体名称(SPN)。 有关配置服务主体名称的详细信息,请转到服务主体名称(SPN)。

    Windows 8、Windows Server 2008 SP2、Windows Server 2008 R2 和 Windows Server 2012: SetSPN

    重要

    SetSPN 需要域管理员权限,并且可以从域中的任何计算机执行。

    返回注册到域帐户的所有 SPN 的列表:

    setspn.exe -l Domain\UserAccount
    

    创建 SPN:

    1. 为 IIS/SharePoint 计算机的 FQDN 创建 SPN:

      setspn.exe -s http/IISSharePointComputerName.___domain.com ___domain\IISApplicationPoolDomainAccount
      
    2. 为 IIS/SharePoint 计算机的 NETBIOS 名称创建 SPN:

      setspn.exe -s http/IISSharePointComputerNamedomain\IISApplicationPoolDomainAccount
      
    3. 为 IIS/SharePoint 计算机所用的 SQL Server 计算机的 FQDN 创建一个 SPN。

      setspn.exe -s mssqlsvc/SQLComputerName.___domain.com ___domain\SQLServerServiceDomainAccount
      
    4. 为 IIS/SharePoint 计算机使用的 SQL Server 计算机的 FQDN 和 TCP 端口创建 SPN:

      setspn.exe -s mssqlsvc/SQLComputerName.___domain.com:1433 ___domain\SQLServerServiceDomainAccount
      
    5. 为 IIS/SharePoint 计算机使用的 SQL Server 计算机的 NETBIOS 名称创建 SPN:

      setspn.exe -s mssqlsvc/SQLComputerNamedomain\SQLServerServiceDomainAccount
      
    6. 为 IIS/SharePoint 计算机使用的 SQL Server 计算机的 NETBIOS 名称:TCP 端口创建 SPN:

      setspn.exe -s mssqlsvc/SQLComputerName:1433 ___domain\SQLServerServiceDomainAccount
      
  3. 在域控制器上,转到 Active Directory 用户和计算机 并执行以下操作:

    1. 对于以下计算机,请检查 信任此计算机以委派到任何服务

      • SharePoint/IIS 服务器

      • SharePoint 使用的 SQL Server

    2. 检查 帐户是受信任的委派 ,取消选中 帐户是敏感的,不能委派 以下域帐户:

      • SQL Server 服务域帐户

      • IIS 应用程序池域帐户

    有关其他故障排除,请转到 Windows SharePoint Services 适配器疑难解答

另请参阅

配置 SharePoint Services 接收位置配置 SharePoint Services 发送端口CSOM:SharePoint Services 适配器