声明为 Windows 令牌服务 (C2WTS)

如果您想要为处于 SharePoint 场外的数据源使用 windows 身份验证,将需要 SharePoint Claims to Windows Token Service (C2WTS)。 即使用户使用 Windows 身份验证访问数据源,上述要求也是成立的。其原因在于,Web 前端 (WFE) 和 Reporting Services 共享服务之间的通信将始终是 Claims 身份验证。

即使您的数据源与共享服务位于相同的计算机上,也需要 C2WTS。 但在此方案中,不需要约束委托。

C2WTS 创建的令牌将仅用于约束委托(对特定服务的约束)以及配置选项“使用任何身份验证协议”。 如前所述,如果您的数据源与共享服务位于同一台计算机上,则不需要约束委托。

如果您的环境将使用 Kerberos 约束委托,则 SharePoint Server 服务和外部数据库源需要驻留在同一个 Windows 域中。依赖于 Claims to Windows Token Service (C2WTS) 的所有服务都必须使用 Kerberos 约束委托,以便允许 C2WTS 使用 Kerberos 协议转换来将声明转换为 Windows 凭据。 这些规定适用于所有 SharePoint 共享服务。 有关详细信息,请参阅针对 Microsoft SharePoint 2010 产品的 Kerberos 身份验证的概述 (https://technet.microsoft.com/zh-CN/library/gg502594.aspx)

下面概要介绍了这一过程,但没有列出所有详细步骤。

先决条件

注意注意

请注意,某些配置步骤可能会更改,或者在某些场拓扑中不适用。 例如,单服务器安装并不支持 Windows Identity Foundation C2WTS 服务,因此,在该场配置中不可能实现 Claims to Windows Token 委托方案。

配置 C2WTS 所需的基本步骤

  1. 配置您计划用于 C2WTS 的服务帐户需要以下本地策略权限:

    • 以操作系统方式操作

    • 在身份验证后模拟客户端

    • 作为服务登录

    您用于 C2WTS 的帐户还需要配置为具有协议转换的约束委托,并且需要权限以便委托给需要与之通信的服务(例如 SQL Server 引擎、SQL Server Analysis Services)。若要配置委托,您可以使用 Active Directory 用户和计算机管理单元。

    1. 右键单击各服务帐户并且打开“属性”对话框。 在该对话框中,单击**“委托”**选项卡。

      注意注意

      请注意,只有在对象具有分配给它的 SPN 的情况下,“委托”选项卡才可见。 C2WTS 不要求在 C2WTS 帐户上具有 SPN;但如果没有 SPN,“委托”选项卡将不可见。 配置约束委托的另一个方法是使用 ADSIEdit 之类的实用工具。

    2. “委托”选项卡上的主要配置选项如下:

      • 选择“仅信任此用户对指定服务的委托”

      • 选择“使用任何身份验证协议”

      有关详细信息,请参阅以下白皮书为 SharePoint 2010 和 SQL Server 2008 R2 产品配置 Kerberos 身份验证中的“为计算机和服务帐户配置 Kerberos 约束委托”一节。

  2. 配置 C2WTS“AllowedCallers”

    C2WTS 要求在配置文件 c2wtshost.exe.config 中显式列出的“调用方”标识。 C2WTS 不接受来自系统中所有验证了身份的用户的请求,除非配置为这样做。 在此情况下,“调用方”是 WSS_WPG Windows 组。 该 c2wtshost.exe.confi 文件保存在以下位置:

    \Program Files\Windows Identity Foundation\v3.5\c2wtshost.exe.config

    下面是该配置文件的示例:

    <configuration>
      <windowsTokenService>
        <!--
            By default no callers are allowed to use the Windows Identity Foundation Claims To NT Token Service.
            Add the identities you wish to allow below.
          -->
        <allowedCallers>
          <clear/>
          <add value="WSS_WPG" />
        </allowedCallers>
      </windowsTokenService>
    </configuration>
    
  3. 启动操作系统 C2WTS 服务:

    1. 配置该服务以便使用您在之前的步骤中配置的服务帐户。

    2. 将启动类型更改为**“自动”**并且启动该服务。

  4. 启动 SharePoint“Claims to Windows Token Service”:通过 SharePoint 管理中心上的**“管理服务器上的服务”**页启动 Claims to Windows Token Service。 应在将执行操作的服务器上启动该服务。 例如,如果您具有一个作为 WFE 的服务器,并且具有另一个作为应用程序服务器的服务器,该服务器具有正运行的 Reporting Services 共享服务,您仅需启动该应用程序服务器上的 C2WTS。 在 WFE 上不需要 C2WTS。

请参阅

其他资源

Claims to Windows Token Service (c2WTS) 概述 (https://msdn.microsoft.com/zh-CN/library/ee517278.aspx)

针对 Microsoft SharePoint 2010 产品的 Kerberos 身份验证的概述 (https://technet.microsoft.com/zh-CN/library/gg502594.aspx)