为 BI 测试环境配置 Excel Services 无人参与服务帐户

 

适用于: Excel Services, SharePoint Server 2010

上一次修改主题: 2011-09-29

重要

本文属于配置 BI 基础结构:动手实验系列的一部分。若要完成本文中的步骤,您必须先完成以下步骤:

Microsoft SharePoint Server 2010 中的 Excel Services 提供了三种方法来使用安全存储刷新工作簿中的外部数据源:

  • 无人参与服务帐户

  • 嵌入在工作簿中的数据连接

  • Office 数据连接 (ODC) 文件中的数据连接

此实验包含无人参与服务帐户选项。有关如何使用嵌入连接的详细信息,请参阅使用嵌入数据连接配置 Excel Services 数据访问。有关如何使用 ODC 文件的详细信息,请参阅在 BI 测试环境中使用外部数据连接配置 Excel Services 数据访问

若要使用无人参与服务帐户,则需要配置 Active Directory 帐户对数据的访问权,在安全存储中存储此帐户的凭据,并且在 Excel Services 需要刷新工作簿中的数据时,将其配置为使用此帐户。

若要在 Excel Services 中配置无人参与服务帐户,需要执行以下步骤。

  • 配置数据访问帐户

  • 配置 Secure Store Service

  • 配置 Excel Services 全局设置

在此实验中,我们还将在 Microsoft Excel 中创建一个使用 ContosoRetailDW 数据库的示例数据透视表,并将其发布到商业智能中心以确认数据刷新运行正常。

配置数据访问帐户

在配置无人参与服务帐户时,您必须向该帐户授予对 Excel Services 帐户将连接到的数据源的访问权。无人参与服务帐户需要一个用于数据访问的 Active Directory 帐户。请使用以下过程创建用于数据访问的 Active Directory 帐户。

创建用于访问数据的 Active Directory 帐户

  1. 以 Contoso\Administrator 身份登录到 Contoso-DC。

  2. 依次单击“开始”、“管理工具”和“Active Directory 用户和计算机”。

  3. 展开 contoso.local 节点。

  4. 右键单击“用户”,单击“新建”,然后单击“用户”。

  5. 在“全名”和“用户登录名”框中,键入 ExcelUnattended

  6. 单击“下一步”。

  7. 键入帐户密码并进行确认。

  8. 清除“用户下次登录时必须更改密码”复选框。

  9. 选中“密码永不过期”复选框。

  10. 单击“下一步”,然后单击“完成”。

创建帐户后,下一步是向该帐户授予对所需数据的读取权限。在生产方案中,您应授予对任何您需要从 Excel 2010 工作簿中访问的数据源的访问权限。请使用以下过程创建一个 SQL Server 登录,并授予该登录对 ContosoRetailDW 表的数据读取器访问权限。

创建 SQL Server 登录名

  1. 作为 Contoso\SQLAdmin 登录到 Contoso-SQL。

  2. 依次单击“开始”、“所有程序”、“Microsoft SQL Server 2008 R2”和“SQL Server Management Studio”。

  3. 在“连接到服务器”对话框上,选择“数据库引擎”作为“服务器类型”,在“服务器名称”框中键入 Contoso-SQL,然后单击“连接”。

  4. 在对象资源管理器中,展开“安全性”。

  5. 右键单击“登录名”,然后单击“新建登录名”。

  6. 在“登录名”框中,键入 Contoso\ExcelUnattended

  7. 在“选择页”下,单击“用户映射”。

  8. 选中 ContosoRetailDW 数据库对应的“映射”复选框,然后在“数据库角色成员身份: ContosoRetailDW”下,选中“db_datareader”复选框。

  9. 单击“确定”。

在创建帐户并授予适当的数据访问权限后,我们便可以配置 Secure Store Service。

配置 Secure Store Service

Secure Store Service 使用目标应用程序来定义连接参数和授权用户。无人参与服务帐户通常被视为用于一般数据访问的全能帐户,因此,通常会通过目标应用程序向所有用户授予对无人参与服务帐户的访问权限。

为了通过无人参与服务帐户向所有用户授予数据访问权限,运行 Excel Services 应用程序池的帐户将被添加为 Secure Store 目标应用程序的成员。在为 BI 测试环境配置 Excel Services 中,我们创建了 Contoso\ExcelAppPool 帐户来运行 Excel Services 应用程序池。但是,在生产环境中,您可能不知道此帐户是什么,所以我们将介绍确定应用程序池帐户的步骤。

查找分配给 Excel Services 应用程序池的 Windows 标识

  1. 使用 Contoso\FarmAdmin 帐户登录到 Contoso-AppSrv。

  2. 依次单击“开始”、“所有程序”、“Microsoft SharePoint 2010 产品”和“SharePoint 2010 管理中心”。

  3. 在 SharePoint 管理中心网站主页上,单击“安全性”。

  4. 在“安全性”页的“一般安全性”下,单击“配置服务帐户”。

  5. 在“服务帐户”页上的“凭据管理”部分,从下拉列表中选择运行 Excel Services 应用程序的应用程序池(在本示例中为“服务应用程序池 - ExcelServicesAppPool”)。

    在选择此选项后,下拉列表下的框中将显示 Excel Services 应用程序的名称(在本示例中,为“Excel Services“)。

  6. 注意,“Contoso\ExcelAppPool”显示在“为该组件选择帐户”下拉列表中。这是您在安全存储中配置无人参与服务帐户时将需要的“成员”列表的 Windows 标识。

  7. 单击“取消”

确定要用于运行 Excel Services 服务应用程序的应用程序池的帐户后,下一步是在安全存储中为无人参与服务帐户创建目标应用程序。请使用以下过程创建目标应用程序。

为无人参与服务帐户创建目标应用程序

  1. 在管理中心主页的“应用程序管理”下,单击“管理服务应用程序”。

  2. 单击 Secure Store Service 服务应用程序。

  3. 在功能区上,单击“新建”。

  4. 在“目标应用程序 ID”框中,键入 ExcelServicesUnattended

  5. 在“显示名称”框中,键入 ExcelServicesUnattended

  6. 在“联系人电子邮件”框中,键入 farmadmin@contoso.local

    备注

    虽然未在此环境中配置电子邮件通知,但“联系人电子邮件”也是必填字段。

  7. 在“目标应用程序类型”下拉列表中,选择“组”。

  8. 单击“下一步”。

  9. 保留默认凭据字段,然后单击“下一步”。

  10. 在“指定成员资格设置”页中:

    • 在“目标应用程序管理员”框中,键入 Contoso\FarmAdmin

    • 在“成员”框中,由于我们将使用目标应用程序来存储无人参与服务帐户的凭据,因此请键入我们在上一过程中放置的 Excel Services 应用程序池帐户 (Contoso\ExcelAppPool)。

  11. 单击“确定”。

在创建目标应用程序后,您必须指定该应用程序将使用的凭据。目标应用程序凭据是已授予其数据访问权的凭据,在本示例中,为已授予对 ContosoRetailDW 数据库的 db_datareader 访问权限的 Contoso\ExcelUnattended 帐户。

使用以下过程可设置目标应用程序的凭据。

设置目标应用程序的凭据

  1. 在“Secure Store Service 应用程序”页上的“目标应用程序 ID”列中,指向“ExcelServicesUnattended”,单击出现的箭头,然后单击“设置凭据”。

  2. 在“Windows 用户名”框中,键入 Contoso\ExcelUnattended

  3. 键入 Contoso\ExcelUnattended 帐户的密码并进行确认。

  4. 单击“确定”。

在为目标应用程序设置凭据后,无人参与服务帐户的 Secure Store Service 配置便已完成。下一步是将 Excel Services 配置为将此目标应用程序用于无人参与服务帐户。

配置 Excel Services

无人参与服务帐户配置是 Excel Services 全局设置的一部分。使用以下过程可在 Excel Services 中配置无人参与服务帐户。

配置 Excel Services 全局设置

  1. 在管理中心主页的“应用程序管理”部分,单击“管理服务应用程序”。

  2. 在“管理服务应用程序”页上,单击“Excel Services”。

  3. 在“管理 Excel Services”页上,单击“全局设置”。

  4. 在“Excel Services 设置”页上的“外部数据”部分,在“应用程序 ID”框中键入 ExcelServicesUnattended

  5. 单击“确定”。

在配置 Excel Services 全局设置后,无人参与服务帐户的设置便已完成。在下一节中,我们将创建包含外部数据的 Excel 工作簿,并将其发布到商业智能中心中的 SharePoint 文档库。然后,我们使用无人参与服务帐户来测试数据刷新。

发布包含外部数据源的工作簿

若要测试无人参与服务帐户的配置,我们必须先创建包含外部数据连接的工作簿。请使用以下过程创建该工作簿。

创建包含外部数据连接的工作簿

  1. 使用 Contoso\Susan.Burk 帐户登录到 Contoso-Client。

  2. 依次单击“开始”、“所有程序”、“Microsoft Office”和“Microsoft Excel 2010”。

  3. 在“数据”选项卡上的“获取外部数据”组中,单击“自其他源”,然后单击“来自 SQL Server”。这会启动“数据连接向导”,该向导有三页。

  4. 在“服务器名称”框中,键入 Contoso-SQL

  5. 在“登录凭据”下,单击“使用 Windows 验证”选项,然后单击“下一步”转到“数据连接向导”的第 2 页。

  6. 在“选择包含您所需的数据的数据库”部分中,选择“ContosoRetailDW”。在“连接到指定表格”部分,选择“DimStore”,然后单击“下一步”。

  7. 在“保存数据连接文件并完成”页上,单击“完成”。

    备注

    如果系统提示您覆盖连接文件,请单击“是”。

  8. 在“导入数据”对话框中,选择“数据透视表”选项,然后单击“确定”。

  9. 在右侧窗格的“数据透视表字段列表”中:

    1. 选中“SellingAreaSize”复选框。

    2. 选中“StoreType”复选框。

将 Excel 工作簿保持打开状态以进行下一过程。

我们现在已具有包含报表的数据连接工作簿。但是,在将该工作簿发布到文档库之前,我们必须修改 Excel 2010 设置。默认情况下,Excel 2010 设置被配置为使用 Windows 验证,这不是使用无人参与服务帐户的正确设置。请使用以下过程修改我们刚才创建的工作簿中的 Excel 2010 验证设置。

配置 Excel Services 验证设置

  1. 在 Excel 工作簿中的“数据”选项卡上,单击“连接”。

  2. 在“工作簿连接”对话框中,单击“属性”。

  3. 在“连接属性”对话框中的“定义”选项卡上,单击“身份验证设置”。

  4. 在“Excel Services 身份验证设置”对话框中,选择“无”选项,然后单击“确定”。

  5. 在“连接属性”对话框中,单击“确定”。

    备注

    如果您看到将移除指向外部连接文件的链接的警告,请单击“是”。(尽管 Excel 要求您保存连接文件,Excel Services 身份验证不需要该文件。)

  6. 在“工作簿连接”对话框中,单击“关闭”。

将 Excel 工作簿保持打开状态以进行下一过程。

现在我们已设置 Excel Services 身份验证设置,下一步是将工作簿发布到商业智能中心中的文档库,并确认数据刷新运行正常。

将工作簿发布到 SharePoint 文档库

  1. 在 Excel 工作簿中,单击“文件”,单击“保存并发送”,然后单击“保存到 SharePoint”。

  2. 在“位置”部分,单击“浏览位置”,然后单击“另存为”。

  3. 在“另存为”对话框上的“URL”框中,键入 http://Contoso-AppSrv/sites/BICenter,然后按 Enter。

    备注

    文件列表刷新可能需要一段时间。

  4. 在“文档库”列表中,双击“文档”。

  5. 在“文件名”框中,键入 SellingAreas.xlsx

  6. 确保选中“通过 Excel 在浏览器中打开”复选框,然后单击“保存”。

工作簿已保存到文档库后,将自动在浏览器中加载。下一步是确认数据刷新运行正常。

将显示 SellingAreas.xlsx 工作簿的浏览器保持打开状态,以供下一节中的过程使用。

测试数据刷新

为确认数据刷新适用于无人参与服务帐户,我们将按照以下步骤操作:

  • 在 Contoso-Client 上刷新当前在浏览器中显示的数据

  • 更改 ContosoRetailDW 数据库中的值

  • 再次在 Contoso-Client 上刷新浏览器中显示的数据,并确认显示新信息

首先,我们将刷新现有数据。请使用以下过程刷新浏览器中的数据。

使用 Excel Services 刷新数据连接工作簿

  1. 在浏览器中的“数据”下拉列表上,单击“刷新所有连接”。

    备注

    如果显示警告消息,请单击“确定”。

如果无人参与服务帐户配置正确,则数据刷新时将不会出现错误,但我们此时不会看到数据值有任何更改。下一步是更改 ContosoRetailDW 数据库中的值,并确认这些更改显示在工作簿中。

更新 ContosoRetailDW 数据库中的数据

  1. 使用 Contoso\SQLAdmin 帐户登录到 Contoso-SQL。

  2. 依次单击“开始”、“所有程序”、“Microsoft SQL Server 2008 R2”和“SQL Server Management Studio”。

  3. 在“连接到服务器”对话框上,选择“数据库引擎”作为“服务器类型”,然后单击“连接”。

  4. 在工具栏中单击“新建查询”。

  5. 将以下查询复制到查询窗口中:

    USE [ContosoRetailDW]
    GO
    UPDATE dbo.DimStore set dbo.DimStore.SellingAreaSize = 500 where dbo.DimStore.StoreType = 'Catalog'
    GO
    
  6. 在工具栏中单击“执行”。

  7. 返回显示 SellingArea.xlsx 工作簿的 Contoso-Client。

返回 Contoso-Client 虚拟机,其中 SellingAreas.xlsx 显示在浏览器中。

注意电子表格中“目录”行的当前显示数字。我们在 DimStore 表中将此行更新为值 500,以便新值应在我们刷新工作簿时显示。请使用以下过程刷新工作簿。

备注

如果您看到该页面已过期的警告,请单击“确定”,然后重新启动该过程。

使用 Excel Services 刷新数据连接工作簿

  1. 在浏览器的“数据”下拉列表中,单击“刷新所有连接”。

    备注

    如果显示警告消息,请单击“确定”。

新值 500 现在应显示在报表的“目录”行中,确认无人参与服务帐户中的数据刷新运行正常。

备注

在刷新工作簿时,Excel Services 缓存设置将影响显示新结果的速度。在为 BI 测试环境配置 Excel Services 实验中,我们将缓存设置设为零 (0),以允许立即刷新。在生产环境中,刷新可能需要花费更长的时间,具体取决于配置缓存的方式。