Visio Services 的数据身份验证

 

适用于: SharePoint Server 2010

上一次修改主题: 2016-11-30

Microsoft SharePoint Server 2010 中的 Visio Services支持连接到各种数据源的数据连接 Web 绘图,其中包括:

  • SharePoint 场中承载的数据(如 Microsoft Excel 工作簿或 SharePoint 列表)。

  • 外部数据(如 Microsoft SQL Server 数据、OLE DB 数据源或 ODBC 数据源)。

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

从数据源检索数据

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

数据源 身份验证方法

SharePoint 列表

SharePoint 用户权限

Excel 工作簿

SharePoint 用户权限

SQL Server

下列方法之一:

  • Windows 身份验证(集成安全性)

    • 使用受约束的 Kerberos 委派

    • 使用安全存储

    • 使用无人参与服务帐户

  • SQL Server 身份验证

OLE DB/ODBC

随数据源(通常是连接字符串中存储的用户名和密码对)的不同而异。

还可使用自定义数据提供程序。有关详细信息,请参阅使用 Visio Services 创建自定义数据提供程序(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=196860&clcid=0x804)(该链接可能指向英文页面)。

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

  • Access 数据库

  • 未承载于 SharePoint Server 上的 Excel 工作簿

  • OLAP

连接到 SharePoint Server 上承载的数据

Visio Services 支持连接到 SharePoint 场中承载的数据的数据连接 Web 绘图,其中包括:

  • 驻留在文档库中的 Excel 工作簿

  • SharePoint 列表中的数据

连接到 Excel 工作簿

Visio Services 使用 Web 绘图查看器的 SharePoint Server 凭据来连接到 .xlsx Excel 工作簿。若要成功执行身份验证操作,则必须满足以下条件:

  • 必须在 SharePoint 场上正确设置和配置 Excel Services。

  • 必须在承载 Web 绘图的场上承载工作簿。

  • Web 绘图查看器必须至少具有对 Excel 工作簿的“读取”权限。

无需任何其他配置步骤即可启用这类数据连接。

备注

作为连接到 Excel 工作簿的一部分,Visio Services 会请求 Excel Services 刷新工作簿(如果工作簿包含与外部数据的连接)。在此情况下,绘图查看器的标识将传递到 Excel Services,以便 Excel Services 能够对基础数据源进行身份验证以刷新工作簿。

连接到 SharePoint 列表

Visio Services 使用 Web 绘图查看器的 SharePoint Server 凭据来连接到 SharePoint 列表。若要成功执行身份验证操作,则必须满足以下条件:

  • 必须在承载 Web 绘图的场上承载 SharePoint 列表。

  • Web 绘图查看器必须至少具有对 SharePoint 列表的“读取”权限。

无需任何其他配置步骤即可启用这类数据连接。

连接到外部数据

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

作为一种安全措施,必须在 Visio Services 明确信任数据提供程序后才能使用它们。有关受信任的数据提供程序的详细信息,请参阅配置 Visio 图形服务的受信任数据提供程序 (SharePoint Server 2010)

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

  • Windows 身份验证

  • SQL Server 身份验证

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

数据连接

Visio Web 绘图将使用以下两种连接之一:

  • 嵌入的连接

  • 链接的连接

嵌入的连接将作为 Visio Web 绘图的一部分存储。链接的连接将外部存储到 Office 数据连接 (ODC) 文件中的 Web 绘图。若要使用链接的连接,Web 绘图必须引用存储在 Web 绘图所在的场中的文件。每个数据连接均包含:

  • 一个连接字符串

  • 一个查询字符串

  • 一种身份验证方法

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

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

连接类型 嵌入的连接 ODC 文件

支持的数据源

  • SQL Server(仅支持 Kerberos 委派和无人参与服务帐户)

  • OLE DB/ODBC

  • Excel 工作簿

  • SharePoint 列表

  • 自定义数据提供程序

  • SQL Server(支持所有身份验证方法)

  • OLE DB/ODBC

优点

  • 所有连接信息都存储在 Web 绘图中。

  • 只需少量管理开销即可支持嵌入的连接。

  • 可轻松创建嵌入的连接。

  • 可使用数据连接库集中存储、管理、审核、共享链接的连接并控制对它们的访问。

  • 绘图作者可使用现有连接,而无需创建查询和连接字符串。

  • 如果数据源的数据连接详细信息发生更改,则管理员只需更新一个 ODC 文件即可。在发生此更改时,所有引用 ODC 文件的 Web 绘图都将在下次刷新时使用更新的连接信息。(此方案的一个示例是,当移动数据库服务器或更改数据库名称时。)

缺点

  • 如果数据源的数据连接详细信息发生更改,则必须将具有该数据源的嵌入连接的所有 Web 绘图连同更新的连接信息一起重新发布。

  • SharePoint 管理员更加难以审核嵌入的数据连接。

  • 必须使用 Excel 创建链接的连接。

  • 可能需要获得 SharePoint 管理员的帮助,才能共享、管理和保护链接的连接。

  • 链接的连接将以明文形式保存,并可能包含数据库密码。必须额外谨慎以帮助保护这些文件。

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

备注

必须先在 Excel 中创建 ODC 文件并将该文件导出到 SharePoint Server,然后才能将该文件用于 Visio Services。

对于您必须具有与仅供某些用户使用的小型数据源或基于文件的数据源的快速数据连接的方案,选择嵌入连接。

ODC 文件可存储在数据连接库(一类特殊的 SharePoint 文档库)中。在此类文档库中集中数据连接具有几大优点:

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

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

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

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

  • 最终用户只在一个位置查找绘图数据,从而减少了混淆情况和用户培训。

有关如何创建数据连接库的信息,请参阅如何:创建和使用数据连接库(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=188117&clcid=0x804)(该链接可能指向英文页面)。有关如何创建 ODC 文件的信息,请参阅创建、编辑和管理至外部数据的连接 (https://go.microsoft.com/fwlink/?linkid=117909&clcid=0x804)。

Windows 身份验证

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

Windows 身份验证

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

身份验证方法 Kerberos 委派 安全存储 无人参与服务帐户

说明

通过使用受约束的 Kerberos 委派,将绘图查看器的 Windows 凭据直接发送到数据源。

通过使用 Secure Store Service,将查看器的 Windows 凭据映射到安全存储目标应用程序中指定的另一组凭据。

通过使用 Secure Store Service,将所有查看器映射到唯一一组凭据(称作无人参与服务帐户),此类凭据存储在 Visio Services 全局设置中指定的特定安全存储目标应用程序中。

数据连接凭据

Web 绘图查看器的 Windows 凭据。

安全存储目标应用程序中指定的凭据。

无人参与服务帐户的凭据。

优点

  • Kerberos 协议是针对凭据管理的行业标准。

  • Kerberos 与现有 Active Directory 基础结构紧密结合。

  • Kerberos 委派允许审核对数据源的单个访问。

  • 在 Web 绘图查看器标识已知的情况下,Web 绘图创建者可将个性化数据库查询嵌入 Web 绘图中。

  • Secure Store Service 是 SharePoint Server 的一部分,并且比 Kerberos 更易于配置。

  • 映射灵活:可按一对一或多对一的方式映射用户。

  • 非 Windows 凭据可用于连接到不接受 Windows 凭据的数据源。

  • 其他商业智能应用程序(如 Excel Services)可重用为 Visio 创建的映射。

  • 无人参与服务帐户是最易于部署和安装的身份验证方法。

  • 无人参与服务帐户不会产生很多管理开销。

缺点

  • 需要为 SharePoint Server 和 Visio Services 配置其他管理工作。

  • 创建和管理映射表会产生一些管理开销。

  • 安全存储允许有限审核。在多对一方案中,通过目标应用程序将各个传入用户映射到同一凭据,这实际上是将他们融合为一个用户。

  • 假定将所有人映射到同一凭据,管理员无法识别出访问数据源的人员。

若要成功执行身份验证操作…

  • 必须在 SharePoint 场上设置 Kerberos 委派。

  • 必须在场上设置和配置 Secure Store Service。Secure Store Service 还必须包含特定传入用户的相应映射信息。此外,可能需要定期更新映射信息以反映映射帐户的密码更改。

  • 必须在场上设置和配置 Secure Store Service。Secure Store Service 还必须包含无人参与服务帐户的相应凭据。此外,可能需要定期更新映射信息以反映映射帐户的密码更改。

  • 必须将 Visio Services 配置为使用无人参与服务帐户。

Kerberos 委派

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

安全存储

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

有关将安全存储与 Visio Services 一起使用的信息,请参阅商业智能服务应用程序的安全存储

视频演示

视频的屏幕截图

此演示说明了使用安全存储配置 Visio Services 的步骤。

观看视频(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=196864&clcid=0x804)(该链接可能指向英文页面)。若要下载视频文件,请右键单击该链接,然后单击“目标另存为”。

无人参与服务帐户

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

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

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

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

  • 当 ODC 文件指定对 Windows 或 SQL Server 身份验证使用无人参与服务帐户时

  • 当未使用 ODC 且 Kerberos 身份验证失败时

备注

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

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

有关将无人参与服务帐户与 Visio Services 一起使用的信息,请参阅商业智能服务应用程序的安全存储

视频演示

视频的屏幕截图

此演示说明了使用无人参与服务帐户配置 Visio Services 的步骤。

观看视频(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=196865&clcid=0x804)(该链接可能指向英文页面)。若要下载视频文件,请右键单击该链接,然后单击“目标另存为”。

SQL Server 身份验证

SQL Server 身份验证要求 Visio Services 向 SQL Server 数据源提供一个 SQL Server 用户名和密码以进行身份验证。Visio Services 将从数据连接的连接字符串中提取该用户名和密码,并将它们传递到数据源。

为了降低安全风险,Visio Services 在连接到此类数据源时将模拟无人参与服务帐户。

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

对第三方数据源进行身份验证通常需要 Visio Services 向数据源提供一个用户名和密码。与 SQL Server 身份验证类似,Visio Services 将从数据连接的连接字符串中提取该用户名和密码,并将它们传递到数据源。

为了降低安全风险,Visio Services 在连接到此类数据源时将模拟无人参与服务帐户。

数据刷新

Visio Services 支持刷新连接到以下一个或多个数据源的绘图:

  • SQL Server

  • SharePoint 列表

  • SharePoint Server 中承载的 Excel 工作簿

  • Oracle 9i、9iR2、10g、10gR2、11g、11gR2 和 DB2 9.2

备注

如果以上列表中未显示您打算连接到的数据源,则可通过创建 Visio 自定义数据提供程序为其添加支持。利用此技术,您可以将多个现有数据源打包成一个可供 Visio Services 使用的数据源。有关详细信息,请参阅 MSDN Library Online 中的使用 Visio Services 创建自定义数据提供程序 (https://go.microsoft.com/fwlink/?linkid=191029&clcid=0x804)。

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

外部数据刷新

  1. 创建绘图:   绘图作者会将数据连接 Web 绘图上载到 SharePoint Server 2010。

  2. 触发刷新:   绘图查看器会触发数据连接 Web 绘图上的刷新。

  3. 数据连接:   Visio Services 为绘图中的每个外部数据源检索数据连接信息。

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

  5. 身份验证:   Visio Services 在数据源中进行身份验证并代表绘图查看器检索请求的数据。

  6. 绘图刷新:   Visio Services 更新基于数据源数据的 Web 绘图并将它返回到查看器。

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

  • 最终用户打开 Web 绘图。

  • 最终用户在已打开的 Web 绘图上单击“刷新”按钮。

  • 最终用户加载一个包含已配置为由网站设计者自动刷新的 Visio Web Access Web 部件的页面。

    备注

    SharePoint 网站设计者必须将 Visio Web Access Web 部件置于页面上并将其配置为定期刷新。

还可通过在 JavaScript 中调用 Visio Web Access Web 部件的混合 Web 应用程序 API 的 vwaControl.Refresh() 方法,在第三方解决方案中触发刷新。有关详细信息,请参阅 MSDN Library Online 中的在 Visio Web Access Web 部件中自定义 Visio Web 绘图(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=196503&clcid=0x804)(该链接可能指向英文页面)。

如果不存在此 Web 绘图的早期缓存版本,则这些操作中的任一操作都将触发刷新并会更新 Web 绘图。有关配置 Visio Services 的缓存设置的信息,请参阅配置 Visio 图形服务全局设置 (SharePoint Server 2010)