PowerPivot 身份验证和授权

在 SharePoint 2010 场中运行的 PowerPivot for SharePoint 部署使用 SharePoint 服务器提供的身份验证子系统和授权模型。 SharePoint 安全基础结构扩展到 PowerPivot 内容和操作,因为所有与 PowerPivot 相关的内容都存储在 SharePoint 内容数据库中,所有与 PowerPivot 相关的操作都由场服务器中的 PowerPivot 共享服务执行。 请求包含 PowerPivot 数据的工作簿的用户使用基于其 Windows 用户标识的 SharePoint 用户标识进行身份验证。 工作簿的权限决定请求是被批准还是被拒绝。

由于与 Excel Services 的集成是自助服务数据分析所必需的,因此保护 PowerPivot 服务器需要你也了解 Excel Services 安全性。 当用户查询与 PowerPivot 数据建立数据连接的数据透视表时,Excel Services 会将数据连接请求转发到场中的 PowerPivot 服务器以加载数据。 服务器之间的这种交互要求你了解如何为这两个服务器配置安全设置。

单击以下链接可阅读本主题中的特定部分:

需要经典模式登录的 Windows 身份验证

需要用户授权的 PowerPivot操作

PowerPivot 数据访问的 SharePoint 权限

PowerPivot 工作簿的 Excel Services 安全注意事项

经典模式登录要求的 Windows 身份验证

PowerPivot for SharePoint 支持一组比 SharePoint 中可用的少的身份验证选项。 在可用的身份验证选项中,PowerPivot for SharePoint 部署仅支持 Windows 身份验证。 此外,必须针对经典模式配置登录的 Web 应用程序。

Windows 身份验证是必需的,因为 PowerPivot for SharePoint 部署中的 Analysis Services 数据引擎仅支持 Windows 身份验证。 Excel Services 使用通过 NTLM 或 Kerberos 协议认证的 Windows 用户身份,通过 MSOLAP OLE DB 提供程序建立与 Analysis Services 的连接。

第二个要求(Web 应用程序的经典模式身份验证)是确保 PowerPivot Web 服务的可作性所必需的。 Web 服务是在 Web 前端上运行的组件,提供 HTTP 重定向到 SharePoint 场中的 PowerPivot 服务器。 虽然 Web 服务对服务到服务通信具有声明感知,但对于它负责路由到场中 PowerPivot 共享服务的数据连接请求,缺乏声明感知能力。 仅支持来自 IIS、使用 Windows 标识进行身份验证的连接请求来加载 PowerPivot 数据。 Web 应用程序的经典模式登录使 PowerPivot Web 服务能够成功连接到场中的 PowerPivot 共享服务。

尽管更常见的数据访问方案不需要经典模式登录(其中 PowerPivot 数据是从呈现它的同一 Excel 工作簿中提取的)并不尝试将 PowerPivot for SharePoint 与配置为使用其他身份验证提供程序的 SharePoint Web 应用程序配合使用。 每当用户尝试以外部数据源的形式连接到 PowerPivot 工作簿时,这样做将导致连接失败。

如果没有经典模式登录,PowerPivot Web 服务处理的以下类型的请求将失败:

  • 对源自场外部的 PowerPivot 数据的任何请求(例如,在报表设计器或报表生成器中创建报表,其中数据源是 PowerPivot 工作簿的 SharePoint URL)

  • 来自客户端应用程序或报表的内部请求,该客户端应用程序或报表使用 PowerPivot 工作簿作为外部数据源(例如,在 Excel 桌面应用程序中创建工作簿,使用一个发布的包含 PowerPivot 数据的第二个 Excel 工作簿作为数据源)

如何检查应用程序的身份验证提供程序

创建新的 Web 应用程序时,请务必在“创建新 Web 应用程序”页中选择 “经典模式身份验证 ”选项。

对于现有 Web 应用程序,请使用以下说明验证 Web 应用程序是否已配置为使用 Windows 身份验证。

  1. 在管理中心的“应用程序管理”中,单击“ 管理 Web 应用程序”。

  2. 选择 Web 应用程序。

  3. 单击 “身份验证提供程序”。

  4. 确认每个区域都有一个提供程序,并将默认区域设置为 Windows。

需要用户授权的 PowerPivot 操作

SharePoint 授权专用于对 PowerPivot 查询和数据处理的所有级别的访问。

不支持 Analysis Services 基于角色的授权模型。 没有针对 PowerPivot 数据在单元格、行或表级别的角色授权。 无法保护工作簿的不同部分,以授予或拒绝特定用户对其中敏感数据的访问权限。 嵌入式 PowerPivot 数据完全可供对 SharePoint 库中的 Excel 工作簿具有“查看”权限的用户使用。

在以下情况下,PowerPivot for SharePoint 将模拟 SharePoint 用户:

  • 查询具有与 PowerPivot 数据库的数据连接的数据透视表或数据透视图,其中 PowerPivot 服务应用程序代表用户与处理数据的特定 PowerPivot 共享服务实例建立连接。

  • 在数据不可用时,从缓存或库中加载 PowerPivot 数据。 如果对系统中尚未加载的 PowerPivot 数据发出数据连接请求,Analysis Services 服务实例将使用 SharePoint 用户的标识从内容库检索数据源并将其加载到内存中。

  • 数据刷新操作是将数据源的更新副本保存到内容库中的工作簿。 在这种情况下,将使用从 Secure Store Service 中的目标应用程序检索到的用户名和密码执行实际登录作。 凭据可以是 PowerPivot 无人参与的数据刷新帐户,也可以是创建数据刷新计划时随数据刷新计划一起存储的凭据。 有关详细信息,请参阅配置 PowerPivot 数据刷新的存储凭据(PowerPivot for SharePoint)配置 PowerPivot 无人参与的数据刷新帐户(PowerPivot for SharePoint)。

PowerPivot 数据访问的 SharePoint 权限

仅通过 SharePoint 集成支持发布、管理和保护 PowerPivot 工作簿。 SharePoint 服务器提供身份验证和授权子系统,确保对数据的合法访问。 在 SharePoint 场之外,没有支持的方案来安全部署 PowerPivot 工作簿。

用户通过“查看”权限或更高版本对 PowerPivot 数据的访问权限在服务器上是只读的。 参与权限允许添加和编辑文件。 对 PowerPivot 数据的更改要求将工作簿下载到安装了 PowerPivot for Excel 的 Excel 桌面应用程序。 对该文件的参与权限将确定用户是否可以在本地下载文件,然后将更改保存回 SharePoint。

因此,“贡献”和“仅查看”权限级别定义了用户访问 PowerPivot 数据的有效权限集。 其他权限级别的工作方式与“参与”和“仅查看”权限相同(例如,因为“读取”包括“仅查看”权限,因此分配给“读取”的用户将具有与“仅查看”相同的访问权限级别)。

下表汇总了确定对 PowerPivot 数据和服务器操作的访问权限的权限级别:

权限级别 允许执行这些任务
场或服务管理员 安装、启用和配置服务和应用程序。

使用 PowerPivot 管理仪表板并查看管理报表。
完全控制 在网站集级别激活 PowerPivot 功能集成。

创建 PowerPivot 图库库。

创建数据馈送库。
贡献 添加、编辑、删除和下载 PowerPivot 工作簿。

配置数据刷新。

基于 SharePoint 网站上的 PowerPivot 工作簿创建新工作簿和报表。

在数据馈送库中创建数据服务文档
读取 以外部数据源的形式访问 PowerPivot 工作簿,其中工作簿 URL 在连接对话框中显式输入(例如,在 Excel 的数据连接向导中)。
仅查看 查看 PowerPivot 工作簿。

查看数据更新历史记录。

将本地工作簿连接到 SharePoint 网站上的 PowerPivot 工作簿,以其他方式重新利用其数据。

下载工作簿的快照。 快照是数据的静态副本,没有切片器、筛选器、公式或数据连接。 快照的内容类似于从浏览器窗口复制单元格值。

PowerPivot 工作簿的 Excel Services 安全注意事项

PowerPivot 服务器端查询处理与 Excel 服务紧密耦合。 产品集成从文档级别开始,因为 PowerPivot 工作簿是包含或引用 PowerPivot 数据的 Excel 工作簿(.xlsx)文件。 PowerPivot 工作簿没有单独的文件扩展名。

在 SharePoint 网站上打开 PowerPivot 工作簿时,Excel Services 将读取嵌入的 PowerPivot 数据连接字符串,并将请求转发到本地 SQL Server Analysis Services OLE DB 提供程序。 然后,提供程序将连接信息传递到场中的 PowerPivot 服务器。 为了使请求在两个服务器之间无缝流动,必须将 Excel Services 配置为使用 PowerPivot for SharePoint 所需的设置。

在 Excel Services 中,安全相关的配置设置在受信任的位置、受信任的数据提供程序和受信任的数据连接库上指定。 下表介绍了启用或增强 PowerPivot 数据访问的设置。 如果未在此处列出设置,则它不会影响 PowerPivot 服务器连接。 有关如何逐步指定这些设置的说明,请参阅 初始配置(PowerPivot for SharePoint)中的“启用 Excel Services”部分。

注释

大多数与安全相关的设置适用于受信任的位置。 如果要保留默认值或使用不同站点的不同值,可以为包含 PowerPivot 数据的站点创建其他受信任位置,然后仅为该站点配置以下设置。 有关详细信息,请参阅 Create a trusted location for PowerPivot sites in Central Administration

面积 设置 DESCRIPTION
Web 应用程序 Windows 身份验证提供程序 PowerPivot 将它从 Excel Services 获取的声明令牌转换为 Windows 用户标识。 必须将使用 Excel Services 作为资源的任何 Web 应用程序配置为使用 Windows 身份验证提供程序。
受信任位置 位置类型 此值必须设置为 Microsoft SharePoint Foundation。 PowerPivot 服务器检索 .xlsx 文件的副本,并将其加载到场中的 Analysis Services 服务器上。 服务器只能从内容库中检索 .xlsx 文件。
允许外部数据 此值必须设置为 受信任的数据连接库并嵌入。 PowerPivot 数据连接嵌入工作簿中。 如果不允许嵌入连接,则用户可以查看数据透视表缓存,但他们将无法与 PowerPivot 数据进行交互。
刷新时发出警告 如果使用 PowerPivot 库来存储工作簿和报表,则应禁用此值。 PowerPivot 库包含文档预览功能,若关闭“打开时刷新”和“刷新时警告”这两个选项,该功能效果最佳。
受信任的数据提供程序 MSOLAP.4

MSOLAP.5
MSOLAP.4 默认包含,但 PowerPivot 数据访问要求 MSOLAP.4 提供程序为 SQL Server 2008 R2 版本。

MSOLAP.5 随 SQL Server 2014 版本的 PowerPivot for SharePoint 一起安装。

请勿从受信任的数据提供程序列表中删除这些提供程序。 在某些情况下,您可能需要在服务器场中的其他 SharePoint 服务器上安装此提供程序的额外副本。 有关详细信息,请参阅 在 SharePoint Server 上安装 Analysis Services OLE DB 提供程序
受信任的数据连接库 可选。 可以在 PowerPivot 工作簿中使用 Office 数据连接 (.odc) 文件。 如果使用 .odc 文件向本地 PowerPivot 工作簿提供连接信息,则可以将相同的 .odc 文件添加到此库。
用户定义的函数程序集 不適用。 SharePoint 中的 PowerPivot 会忽略为 Excel Services 构建和部署的用户定义函数程序集。 如果依赖用户定义的程序集执行特定行为,请注意,PowerPivot 查询处理不会使用所创建的用户定义函数。

另请参阅

配置 PowerPivot 服务帐户
配置 PowerPivot 无人参与的数据刷新帐户(PowerPivot for SharePoint)
在管理中心为 PowerPivot 站点创建受信任位置
PowerPivot 安全体系结构