SharePoint Server 2013 中的 Excel Services 的数据身份验证

适用于:yes-img-132013 no-img-162016 no-img-192019 no-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

从数据源中检索数据要求数据源对用户进行身份验证并授予用户对其中包含的数据的访问权。 对于工作簿,Excel Services 将代表查看数据源的用户对数据源进行身份验证,以刷新工作簿连接到的数据。

可供 Excel Services 用来检索数据的身份验证方法依赖于基础数据源的类型,如下表所述。 对于支持多种身份验证方法的数据源,数据连接必须指定要使用哪一种身份验证方法。

Excel Services 的数据源和身份验证方法

数据源 身份验证方法
Analysis Services
Windows 身份验证(集成安全性)
使用受约束的 Kerberos 委派
使用安全存储
使用无人参与服务帐户
使用 EffectiveUserName 连接字符串属性
SQL Server
下列方法之一:
Windows 身份验证(集成安全性)
使用受约束的 Kerberos 委派
使用安全存储
使用无人参与服务帐户
SQL Server 身份验证
自定义数据提供程序
随数据源(通常是连接字符串中存储的用户名和密码对)的不同而异。

还可使用自定义数据提供程序。

Excel 中(而非 Excel Services 中)支持以下数据源:

  • Access 数据库

  • Web 内容

  • XML 数据

  • Microsoft Azure 市场

  • 文本文件

使用 Excel Services 连接到外部数据

Excel Services 可连接到各种外部数据源,其中包括 SQL Server、Analysis Services 以及自定义 OLE DB/ODBC 数据提供程序。 为了连接到数据源,Excel Services 将对每个数据源使用一个特定的数据提供程序。

作为一项安全措施,Excel Services 必须先明确信任数据提供程序,然后才能使用这些提供程序。 可将受信任的数据提供程序配置为 SharePoint 管理中心网站中的 Excel Services 服务应用程序设置的一部分。

可使用以下任一身份验证连接到 SQL Server 数据源:

  • Windows 身份验证

  • SQL Server 身份验证

使用 Windows 身份验证可连接到 Analysis Services 数据源。

其他数据源将使用一个连接字符串,该字符串通常由用户名和密码构成。

Excel Services 工作簿的数据连接

Excel Services 工作簿将使用以下两种连接之一:

  • 嵌入的连接

  • 链接的连接

嵌入的连接将作为 Excel Services 工作簿的一部分存储。 链接的连接将外部存储到 Office 数据连接 (ODC) 文件中的 工作簿。 若要使用链接的连接,工作簿必须在受信任的数据连接库中引用存储在工作簿所在的场中的 .odc 文件。 每个数据连接均包含:

  • 一个连接字符串

  • 一个查询字符串

  • 一种身份验证方法

  • (可选)检索外部数据所需的某些元数据

每种连接都具有自己优点和缺点(此处进行了讨论)。 请选择最适合您方案的连接。

Excel Services 的数据连接的比较

连接类型 嵌入的连接 ODC 文件
优点
所有连接信息都存储在工作簿中。
只需少量管理开销即可支持嵌入的连接。
可轻松创建嵌入的连接。
可使用数据连接库集中存储、管理、审计、共享链接的连接并控制对它们的访问。
工作簿作者可使用现有连接,而无需创建查询和连接字符串。
如果数据源的数据连接详细信息发生更改,则管理员只需更新一个 ODC 文件。 进行该更改后,引用 ODC 文件的所有工作簿将在下次刷新时使用更新的连接信息。 (此方案的一个示例是移动数据库服务器或更改数据库名称时。)
缺点
如果数据源的数据连接详细信息发生更改,则必须使用更新的连接信息重新发布与该数据源嵌入连接的所有工作簿。
SharePoint 管理员更难审核嵌入的数据连接。
链接连接可能需要 SharePoint 管理员的帮助才能共享、管理和保护。
链接的连接将以明文形式保存,并可能包含数据库密码。 必须额外谨慎以帮助保护这些文件。

对于您必须具有至企业规模数据源(如 SQL Server 或 Analysis Services)的数据连接的方案,将通过使用 ODC 文件选择链接的数据连接。 链接的数据连接在方案中最有用:对于将跨多个用户共享连接并且管理员对连接的控制很重要的方案,链接的数据连接最有用。

注意

ODC 文件必须先在 Excel 中创建并导出到 SharePoint Server 2013,然后才能与Excel Services一起使用。

在需要将不会广泛使用的数据连接的情况下,可选择一个嵌入式连接。

ODC 文件必须存储在受信任的数据连接库中。 在此类文档库中集中数据连接具有几大优点:

  • 管理员可仅授予受信任的数据连接作者对数据连接库的写访问权,以确保工作簿作者仅使用经测试的安全数据连接。

  • 管理员可在单个位置管理一大组用户的数据连接。

  • 管理员可使用文档库版本控制和工作流功能轻松审批、审计、还原和管理数据连接文件。

  • 可跨其他 Office 应用程序(如 Visio、Visio Services、InfoPath 2016、InfoPath Forms Services 和 Word)重用数据连接库。

  • 工作簿作者只在一个位置查找工作簿数据连接,从而减少了混淆情况和用户培训。

有关如何创建数据连接库的信息,请参阅 如何:创建和使用数据连接库 (https://go.microsoft.com/fwlink/p/?LinkID=188117) 。 有关如何创建 ODC 文件的信息,请参阅 创建、编辑和管理与外部数据 (https://go.microsoft.com/fwlink/p/?LinkID=196894) 的连接。

Windows 身份验证

Windows 身份验证要求 Excel Services 为数据源提供一组 Windows 凭据。 这种凭据在 Windows 网络上很常见,是用于登录到 Windows 域上的计算机或连接到运行 Exchange 的计算机的凭据。 Windows 凭据将视为用于控制对 SQL Server 数据库的访问权的最安全且可管理的方法。 但是,将 Windows 身份验证与 Excel Services 一起使用的障碍是 Windows 双跃点安全措施,其中将无法跨 Windows 网络中的多台计算机传递用户凭据。 假定 Excel Services 是一个多层系统,Excel Services 需要使用特殊的身份验证方法才能代表最终用户检索数据。

应根据各种因素来选择身份验证方法(下表概述了这些因素)。 请选择最适合您方案的身份验证方法。

身份验证方法的比较

身份验证方法
Kerberos 委派
安全存储
无人参与服务帐户
有效用户名
说明
通过使用受约束的 Kerberos 委派,将工作簿查看器的 Windows 凭据直接发送到数据源。
通过使用 Secure Store Service,将查看器的 Windows 凭据映射到安全存储目标应用程序中指定的另一组凭据。
通过使用 Secure Store Service,将所有查看器映射到唯一一组凭据(称作无人参与服务帐户),此类凭据存储在 Excel Services 全局设置中指定的特定安全存储目标应用程序中。
通过使用 EffectiveUserName 全局设置,可将用户的域用户名传递给 Analysis Services 数据源。
数据连接凭据
工作簿查看器的 Windows 凭据。
安全存储目标应用程序中指定的凭据。
无人参与服务帐户的凭据。
Excel Services 进程标识的凭据。
优点
Kerberos 协议是针对凭据管理的行业标准。
Kerberos 与现有 Active Directory 基础结构紧密结合。
Kerberos 委派允许审计对数据源的单个访问。
在工作簿查看器标识已知的情况下,工作簿创建者可将个性化数据库查询嵌入工作簿中。
Secure Store Service 是 SharePoint Server 的一部分,并且比 Kerberos 更易于配置。
映射灵活:可按一对一或多对一的方式映射用户。
非 Windows 凭据可用于连接到不接受 Windows 凭据的数据源。 (还要求配置无人参与服务帐户。)
其他商业智能应用程序(如 Visio 服务)可重用为 Excel Services 创建的映射。
无人参与服务帐户易于部署和安装。
无人参与服务帐户不会产生很多管理开销。
每用户数据安全性(无需配置 Kerberos 委派)。
最低配置和管理开销。
缺点
配置 SharePoint Server 2013 和 Excel Services 所需的其他管理工作。
创建和管理映射表会产生一些管理开销。
安全存储允许有限审计。 在多对一方案中,通过目标应用程序将各个传入用户映射到同一凭据,这实际上是将他们融合为一个用户。
假定将所有人映射到同一凭据,管理员无法识别出访问数据源的人员。
仅适用于 Analysis Services 数据源。
若要使身份验证作成功...
必须在 SharePoint Server 2013 上设置 Kerberos 委派。
必须在场上设置和配置 Secure Store Service。 它还必须包含特定传入用户的相应映射信息。 此外,可能需要定期更新映射信息以反映映射帐户的密码更改。
必须在场上设置和配置 Secure Store Service。 它还必须包含无人参与服务帐户的凭据。 此外,可能需要定期更新映射信息以反映映射帐户的密码更改。
必须将 Excel Services 全局设置配置为使用无人参与服务帐户。
必须在 Excel Services 全局设置中启用"EffectiveUserName"选项。
用户必须是相应的 Analysis Services 角色的成员。

Kerberos 委派

选择 Kerberos 委派以便对支持 Windows 身份验证的企业规模的关系数据源进行安全而快速的身份验证。 有关配置 Kerberos 委派的信息,请参阅:

Secure Store

选择安全存储以便对可能支持或可能不支持 Windows 身份验证的企业规模的关系数据源进行身份验证。 对于要控制用户凭据映射的方案,安全存储也很有用。

有关将 Secure Store 与 Excel Services 配合使用的信息,请参阅在 SharePoint Server 2016 中将 Excel Services 与 Secure Store Service 配合使用

无人参与服务帐户

为了便于配置,Excel Services 提供了一个特殊配置,管理员可在其中创建唯一映射(可在该映射中将所有用户映射到一组凭据)。

该帐户(称作无人参与服务帐户)必须是低特权 Windows 域帐户。 Excel Services 在代表工作簿查看器连接到数据源时将模拟该帐户。

最佳实践是,为该帐户分配尽可能少的网络权限(通常仅分配用于登录网络的访问权和对希望用户连接到的数据源的访问权)。 为了获得最佳安全性,请确保无人参与服务帐户不具有对 SharePoint 配置和内容数据库的访问权。

在以下情况下,Excel Services 将使用无人参与服务帐户:

  • 当 ODC 文件指定无人参与服务的用法时

  • 当嵌入的数据连接指定无人参与服务帐户时

  • 当使用存储在安全存储目标应用程序中的 SQL 凭据时

注意

无人参与服务帐户可以是类型为 Windows 的本地计算机帐户。 如果将无人参与服务帐户配置为本地计算机帐户,则请确保该配置在每台运行 Excel Services 的应用程序服务器上均相同。 出于可管理性方面的原因,最佳实践是使用域帐户。

当连接到安全性不是很重要或部署速度非常重要的小型临时部署时,可选择无人参与服务帐户。

有关将无人参与服务帐户与Excel Services配合使用的信息,请参阅在 SharePoint Server 2016 中使用无人参与服务帐户配置Excel Services数据刷新

SQL Server 身份验证

SQL Server 身份验证要求 Excel Services 向 SQL Server 数据源提供 SQL Server 用户名和密码以进行身份验证。 Excel Services 将连接字符串传递给数据源。 连接字符串必须包含用户名和密码。

如果用户名和密码存储在安全存储目标应用程序中(建议这样做以实现最佳安全性),则 Excel Services 将模拟无人参与服务帐户,并且在建立连接后,SQL 凭据将设置为连接的属性。

针对 OLEDB/ODBC 数据源的身份验证

对第三方数据源进行身份验证通常需要 Excel Services 向数据源提供一个用户名和密码。

如果用户名和密码存储在工作簿或 ODC 文件中,则 Excel Services 将模拟 Windows 标识,它依赖于在工作簿或 ODC 文件中为"Excel Services 身份验证设置"选择了哪一个选项。

如果用户名和密码存储在安全存储目标应用程序中(建议这样做以实现最佳安全性),则 Excel Services 将模拟无人参与服务帐户,并且在建立连接后,SQL 凭据将设置为连接的属性。

数据刷新

Excel Services 支持刷新连接到以下一个或多个数据源的工作簿:

  • SQL Server

  • SQL Server Analysis Services (SSAS)

注意

如果以上列表中未显示您打算连接到的数据源,则可通过创建自定义数据提供程序为其添加支持。 利用此技术,您可以将多个现有数据源打包成一个可供 Excel Services 使用的数据源。

通过 Excel Services 执行以下步骤可刷新外部数据。

  1. 创建工作簿: 工作簿作者将数据连接的工作簿上载到 SharePoint Server 2013。

  2. 触发刷新: 工作簿查看器会触发数据连接的工作簿上的刷新。

  3. 数据连接: Excel Services 为工作簿中的每个外部数据源检索数据连接信息。

  4. 受信任的数据提供程序: Excel Services 检查以了解是否有可用于检索数据的受信任的数据提供程序。

  5. 身份验证: Excel Services 在数据源中进行身份验证并代表工作簿查看器检索请求的数据。

  6. 工作簿刷新: Excel Services 更新基于数据源数据的工作簿并将它返回到查看器。

可通过下列方式之一在浏览器中触发刷新:

  • 最终用户打开工作簿(如果将工作簿配置为在打开时刷新)。

  • 最终用户在已打开的工作簿上单击“刷新”按钮。

如果不存在此工作簿的早期缓存版本,则这些操作中的任一操作都将触发刷新并会更新工作簿。