在 BI 测试环境中使用安全存储配置 Visio Services 数据访问

 

适用于: SharePoint Server 2010

上一次修改主题: 2017-01-19

**摘要:**阅读此示例以了解如何使用 ODC 文件将远程数据库中的数据连接至 Visio 关系图。

重要

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

Microsoft SharePoint Server 2010 中的 Visio Services 提供了两种使用安全存储来刷新连接数据的 Web 绘图中的数据的方法。一种方法使用的是无人参与服务帐户,另一种方法使用的是 Office 数据连接 (ODC) 文件。此实验涉及 ODC 文件选项。有关如何使用无人参与服务帐户的详细信息,请参阅在 BI 测试环境中配置 Visio Services 无人参与服务帐户

备注

ODC 文件必须在 Microsoft Excel 2007 或 Microsoft Excel 2010 中创建。您必须将 Excel 与 Microsoft Visio Professional 2010 或 Microsoft Visio Premium 2010 一起安装在 Contoso-Client 虚拟机上以完成此实验。

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

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

  • 配置数据访问帐户

  • 配置安全存储

  • 配置 Visio Services 全局设置

在此实验中,我们还将在 SQL Server 中创建一个小示例表,并发布一个所含数据连接到 SQL Server 表的 Web 绘图。

视频演示

此视频演示如何使用安全存储为 Visio Services 设置数据访问权。

视频图像

运行时间:14:41

播放视频 观看视频(该链接可能指向英文页面)

下载视频为了获得最佳观看体验,请下载视频(该链接可能指向英文页面)

右键单击该链接并单击“目标另存为”以下载副本。单击该链接将会在默认视频查看器中打开一个 .wmv 文件进行高分辨率查看。

创建示例数据

在通过安全存储配置数据访问时,您必须向该帐户授予对 Visio Web 绘图将连接到的数据源的访问权。在此实验中,我们将创建一个 SQL Server 表。该表包含一些简单的数据,我们可以在将发布到商业智能中心内的文档库的连接数据的 Web 绘图中使用这些数据。

通过下面的过程可创建 SQL Server 表。

使用示例数据创建表

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

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

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

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

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

    USE [master]
    GO
    CREATE DATABASE ServerStatus;
    GO
    USE [ServerStatus]
    GO
    CREATE TABLE [dbo].[Status](
    [Server] [varchar](50) NULL,
    [Status] [bit] NULL
    ) ON [PRIMARY]
    GO
    INSERT INTO Status ([SERVER], [Status]) 
    VALUES ('Seattle', 'TRUE');
    GO
    INSERT INTO Status ([SERVER], [Status]) 
    VALUES ('New York', 'TRUE');
    GO
    INSERT INTO Status ([SERVER], [Status]) 
    VALUES ('London', 'FALSE');
    GO
    
  6. 在工具栏上单击“执行”。

创建示例表后,下一步是创建一个用作数据访问帐户的 Active Directory 帐户。

配置数据访问帐户

安全存储会将指定为具有数据访问权的用户映射到具有数据访问权的帐户。在此实验中,我们将创建一个 Active Directory 帐户,并向该帐户授予对上一节中创建的 ServerStatus 数据库的访问权。使用以下过程可创建该帐户。

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

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

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

  3. 展开 contoso.local 节点。

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

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

  6. 单击“下一步”。

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

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

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

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

创建帐户后,下一步是向该帐户授予对所需数据的读访问权。在生产方案中,您将授予对需要从 Visio Web 绘图访问的任何数据源的访问权。在此实验中,我们将授予对之前创建的示例 SQL Server 的访问权。可以使用以下过程创建一个 SQL Server 登录,并授予该登录对 ServerStatus 表的数据读取器访问权。

创建 SQL Server 登录名

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

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

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

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

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

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

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

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

  9. 单击“确定”。

此时,Contoso\VisioDataAccess 帐户已具有对我们创建的 ServerStatus 数据库的访问权,下一步是配置安全存储。

配置安全存储

配置安全存储包括三个步骤:

  • 确定应通过安全存储获得数据访问权的用户

  • 创建包含这些用户的安全存储目标应用程序

  • 将该目标应用程序映射到具有数据访问权的凭据

通常,您需要为多个用户提供数据访问权。对此进行管理的最简单方法是,创建一个 Active Directory 组,然后在该组中填入您需要为其授予数据访问权的用户。

使用以下过程可创建 Active Directory 组。

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

  1. 使用 Contoso\Administrator 帐户登录到Contoso-DC。

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

  3. 展开 contoso.local 节点。

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

  5. 在“组名”框中,键入 VisioDataAccessGroup

  6. 单击“确定”。

接下来,将在该组中填入我们需要为其授予数据访问权的用户。在此示例中,我们将使用 Susan Burk 和 John Woods 帐户。使用以下过程可填充 VisioDataAccessGroup 组。

填充数据访问组

  1. 在“Active Directory 用户和计算机”的用户列表中,双击“VisioDataAccessGroup”组。

  2. 在“成员”选项卡上,单击“添加”。

  3. 在“选择用户”对话框中,键入 Contoso\susan.burk; Contoso\john.woods,然后单击“确定”。

    此时,“成员”选项卡应将 Susan Burk 和 John Woods 显示为组成员。

  4. 单击“确定”。

下一步是创建一个包含 VisioDataAccessGroup 组的安全存储目标应用程序。使用以下过程可创建目标应用程序。

创建目标应用程序

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

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

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

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

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

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

  7. 在“显示名称”框中,键入 VisioServicesData

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

    备注

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

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

  10. 单击“下一步”。

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

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

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

    2. 在“成员”框中,键入 Contoso\VisioDataAccessGroup

    3. 单击“确定”。

现已创建目标应用程序,我们必须将其与具有数据访问权的凭据(Contoso\VisioDataAccess 帐户)关联。使用以下过程可设置目标应用程序的凭据。

设置目标应用程序的凭据

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

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

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

  4. 单击“确定”。

此时已配置完安全存储。在下一节中,我们将为要创建连接数据的 Web 绘图的 Microsoft Visio 用户配置数据访问权。

向图表作者授予数据库访问权限

当 Visio Services 呈现连接数据的 Web 绘图时,它可使用安全存储来刷新数据。但是,Excel 和 Visio 不会使用安全存储,而是需要用户具有直接数据库访问权以使用 ODC 文件或连接数据的图表。为此,我们必须先向将创建图表的用户授予对 ServerStatus 数据库的读访问权。

为 BI 测试环境配置 Visio Services 中,我们创建了一个名为 VisioDiagramAuthors 的 Active Directory 组,以便向图表作者授予数据库访问权。此时,我们必须向该组授予对 ServerStatus 数据库的 db_datareader 访问权。

通过下面的过程可向 Contoso\VisioDiagramAuthors 组授予数据库访问权限。

向用户授予数据库访问权限

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

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

  3. 连接到“数据库引擎”。

  4. 在 SQL Server Management Studio 中,展开“安全性”,再展开“登录名”。

  5. 右键单击 Contoso\VisioDiagramAuthors 登录名,然后单击“属性”。

  6. 在左侧窗格中,单击“用户映射”。

  7. 选中 ServerStatus 数据库对应的“映射”复选框。

  8. 在“数据库角色成员身份: ServerStatus”列表中,选中“db_datareader”复选框,然后单击“确定”。

为 Contoso\VisioDiagramAuthors 组配置完数据库访问权后,下一步是创建 Office 数据连接文件。

创建 Office 数据连接文件

由于 Visio 无法创建 Office 数据连接 (ODC) 文件,因此,我们必须在 Excel 中创建一个这样的文件,并将该文件发布到数据连接库中,然后再从 Visio 连接到该文件。

使用以下过程可在 Excel 中创建和发布 ODC 文件。

创建和发布 ODC 文件

  1. 以 Contoso\Susan.Burk 身份登录到 Contoso-Client。

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

  3. 在 Excel 中的“数据”选项卡上,单击“自其他源”,然后单击“自 SQL Server”。

  4. 在“服务器名称”框中,键入 Contoso-SQL,然后单击“下一步”。

  5. 从“选择包含您所需的数据的数据库”列表中选择“ServerStatus”,然后单击“下一步”。

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

    备注

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

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

  8. 在“数据”选项卡上,单击“连接”。

  9. 选择“ServerStatus”数据连接,然后单击“属性”。

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

  11. 选择“SSS”选项,并在“SSS ID”框中键入安全存储目标应用程序的名称 VisioServicesData

  12. 单击“确定”。

  13. 在“连接属性”对话框中,单击“导出连接文件”。

  14. 在“保存文件”对话框的 URL 框中,键入 http://Contoso-AppSrv/sites/BICenter,然后按 Enter。

    备注

    可能需要一些时间,该对话框才会刷新并显示网站内容。

  15. 双击“数据连接”。

  16. 在“文件名”框中,键入 ServerStatus.odc,然后单击“保存”。

  17. 在“Web 文件属性”对话框中,从“内容类型”下拉列表中选择“Office 数据连接文件”,然后单击“确定”。

  18. 在“连接属性”对话框中,单击“取消”。

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

  20. 退出 Excel。

    备注

    无需保存 Excel 工作簿。我们已导出 ODC 文件,此时只需从 Visio 创建数据连接即可。

仍以 Susan Burk 身份登录到 Contoso-Client 虚拟机。

现已创建和发布 ODC 文件,我们可以创建连接数据的 Web 绘图了。

使用 ODC 文件创建连接数据的 Web 绘图

在本节中,我们将创建一个连接数据的 Web 绘图,然后将其发布到商业智能中心内的文档库中。这将帮助我们确认通过安全存储正常刷新数据。

使用以下过程可创建 Web 绘图。

使用 ODC 文件创建连接数据的 Web 绘图

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

  2. 在“选择模板”页上的“模板类别”部分,单击“网络”。

  3. 单击“详细网络图”,再单击“创建”。

  4. 在功能区上单击“数据”选项卡,然后单击“将数据链接到形状”。

  5. 在向导的“数据选取器”页上,单击“以前创建的连接”,再单击“下一步”。

  6. 在“选择数据连接”页上,单击“浏览”。

  7. 在“现有连接”对话框中,单击“浏览更多”。

  8. 在“数据选取器”对话框的 URL 框中,键入 http://Contoso-AppSrv/sites/BICenter,然后按 Enter。

    备注

    可能需要一些时间,该对话框才会刷新并显示网站内容。

  9. 双击“数据连接”。

  10. 单击“ServerStatus”数据连接,再单击“打开”。

  11. 在“选择数据连接”页上,单击“完成”。

  12. 在空白绘图页上:

    • 将“形状”区域中的三个服务器图标拖动到该页上。

    • 将“外部数据”部分的模拟运算表的每个行拖动到这些形状之一。

      此时,每个形状应已连接一个数据图形,用于指示服务器名称和状态(1 或 0)。

现在,您应具有类似于这样的图表。

带数据标注的服务器图像

下一步是将图表作为连接数据的 Web 绘图发布,然后确认数据刷新工作正常。

使用以下过程可发布绘图。

发布连接数据的 Web 绘图

  1. 单击“文件”,然后单击“保存并发送”。

  2. 单击“保存到 SharePoint”。

  3. 在“位置”下,单击“浏览位置”。

  4. 在“文件类型”下,单击“Web 绘图”。

  5. 单击“另存为”。

  6. 在“另存为”对话框顶部的位置框中,键入 http://Contoso-AppSrv/sites/BICenter,然后按 Enter。

    备注

    可能需要一些时间,该对话框才会刷新并显示网站内容。

  7. 在“所有网站内容”列表中双击“文档”。

  8. 在“文件名”框中,键入 Server Status,然后单击“保存”。

    浏览器窗口中将呈现 Web 绘图。

  9. 绘图显示时,如果出现“刷新操作禁用”警告,请单击“启用(始终)”。

    请注意下面显示的服务器状态:

    • Seattle – 联机 (1)

    • New York – 联机 (1)

    • London – 脱机 (0)

    保持此浏览器窗口打开,待接下来的数据刷新测试过程完成。

呈现的 Web 绘图将显示 ServerStatus 数据库中当前包含的数据。若要测试数据刷新机制,我们可以在 SQL Server 中修改 Status 表中的数据,然后刷新 Web 绘图以查看更改。

通过下面的过程可修改 SQL Server 中的数据,然后刷新 Web 绘图。

备注

执行此过程时,仍以 Susan Burk 身份登录到 Contoso-Client。

测试 Visio Services 数据刷新

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

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

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

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

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

    USE [ServerStatus]
    GO
    UPDATE dbo.Status set dbo.Status.status = 1 where dbo.Status.server = 'London'
    GO
    
  6. 在工具栏中单击“执行”。

  7. 返回显示服务器状态 Web 绘图的 Contoso-Client。

    请注意,London 服务器仍显示“脱机 (0)”。

  8. 在“Visio Web Access”工具栏上,单击“刷新”。

    请注意,London 服务器现在显示“联机 (1)”,这就反映了我们在 SQL Server 中所做的手动更改。

    备注

    在刷新绘图时,Visio Services 缓存设置将影响显示新结果的速度。在此实验中,我们将缓存设置设为零 (0),以允许立即刷新。在生产环境中,刷新可能需要花费较长时间,具体取决于配置缓存的方法。

See Also

Concepts

规划 Visio Services 安全性 (SharePoint Server 2010)