ServiceNow ITSM
本文介绍如何将 Tableau 连接到 ServiceNow IT Service Management (ITSM) 数据并设置数据源。
警告:自 2023.1 版本起,ServiceNow ITSM 连接器已弃用。您可以使用该连接器,直至其停用为止。一旦连接器停用,它就会从 Tableau 用户界面中移除,使用该连接器的任何数据源将不再按预期工作。通常,弃用的连接器将在弃用 1-2 个版本后停用。您可以改用来自 Tableau Exchange 的 ServiceNow 连接器。
注意:有关此连接器的最新信息,请参见适用于当前版本的 Tableau 的 ServiceNow ITSM 帮助主题。
开始之前
在开始之前,请收集以下连接信息:
- 要连接到的 ServiceNow 实例:基于云的实例或本地实例
- 本地 ServiceNow 帐户的用户名和密码
连接要求
若要将 Tableau 连接到 ServiceNow,请确保满足以下要求:
- 使用本地 ServiceNow 帐户。 ServiceNow API 不支持单点登录 (SSO),因此 Tableau 连接器只能使用本地 ServiceNow 帐户进行身份验证。有关详细信息,请参见使用本地 ServiceNow 帐户。
- 具有正确的权限。访问控制列表 (ACL) 必须为用户提供访问数据所需的权限。有关详细信息,请参见数据访问疑难解答。
- 对于本地实例,配置了 CORS。在连接到 ServiceNow 的本地实例之前,必须在 ServiceNow 中针对 Tableau 配置 CORS。有关详细信息,请参见 Tableau 社区中的 在 ServiceNow上针对 Tableau 配置 CORS(链接在新窗口中打开)。
- 对于云实例,需要代理连接。本机 ServiceNow 连接器通过“servicenow-auth-proxy.connectors.tableau.com”路由,而不是直接从本地用户的 IP 路由。由于 OAuth 2.0 的设计方式,代理是必要的。它存储 OAuth 所需的唯一客户端 ID 和密文,以允许 Tableau Desktop 访问 ServiceNow。
注意:使用代理连接时,不要在 ServiceNow 中应用 IP 地址访问控制。如果需要应用 IP 地址访问控制,请使用查找被拒绝的 IP 地址(链接在新窗口中打开)来查找被拒绝的 IP,然后为它们添加“允许”规则。请注意,与“servicenow-auth-proxy.connectors.tableau.com”关联的 IP 可能会更改。这是云服务,没有静态 IP。Tableau 不提供或更新有关 IP 的信息。
进行连接并设置数据源
启动 Tableau,并在“连接”下选择“ServiceNow ITSM”。有关数据连接的完整列表,请在“至服务器”下选择“更多”。然后执行以下操作:
- 选择“实例位置”:“基于云”或“本地”。
- 输入您的 ServiceNow 实例、用户名,以及本地 ServiceNow 帐户的密码。
注意:如果选择“本地”,则必须输入 ServiceNow 实例的完整 URL。 - 选择“登录”。
- 选择“筛选器类型”:“相对日期范围”或“固定日期范围”,然后选择或指定范围。
- 选择“连接”。
如果 Tableau 无法建立连接,请验证您的凭据是否正确。如果仍然无法连接,则说明您的计算机在定位服务器时遇到问题。请与网络管理员或 ServiceNow 管理员联系。
在数据源页面上,执行下列操作:
(可选)在页面顶部选择默认数据源名称,然后输入要在 Tableau 中使用的唯一数据源名称。例如,使用可帮助其他数据源用户推断出要连接的数据源的数据源命名约定。
- 在“表”下方,选择一个表并将它拖到画布的顶部。
- 选择工作表标签以开始分析。
选择工作表标签后,Tableau 将通过创建数据提取来导入数据。请注意,Tableau Desktop 仅支持 ServiceNow 的数据提取。您可通过刷新数据提取来更新数据。有关详细信息,请参见提取数据。
根据包含的数据量,创建数据提取可能需要一些时间。
使用加速器
您可以使用加速器快速构建专为 Tableau Desktop 和 Tableau Cloud 上的关键业务指标打造的信息性仪表板设计。有关详细信息,请参见使用加速器快速可视化数据。
关键注意事项
ServiceNow 会强制实施帐户的访问权限
具有管理员角色的 ServiceNow 帐户可从“用户”表中检索加密的密码值。对于权限不足的帐户,此文件将为空。由于 ServiceNow 会强制实施分配给帐户的访问权限,因此请注意,您的数据中可能会有一些管理员可访问的其他敏感字段。
不支持自定义表
用于 ServiceNow ITSM 的 Tableau 连接器支持不包括自定义表的 ITSM 服务。
ServiceNow 提供表名称
在 Tableau 连接器中查看表时,将依据表的 ServiceNow 标签(而不是表名称)来标记这些表。例如,表“sys_user_role”将按其标签“用户角色”显示。此标签由 ServiceNow 连接器确定。
显示值字段未包括在数据源中
如果连接到的表包含带有显示值的字段(前缀为 dv_ 的字段),则在创建数据源时不会包括这些字段。可通过联接到包含这些值的适当的相关表来添加显示值。
使用本地 ServiceNow 帐户
您必须使用本地帐户将 Tableau 连接到数据。如果没有本地 ServiceNow 帐户,我们建议您要求管理员实施以下解决方案之一:
- 创建一个本地帐户并共享该帐户。
- 创建一个本地帐户,并将其临时共享足够长的时间,以便提取数据并将数据发布到 Tableau Cloud 或 Tableau Server。然后,管理员可以保存新密码并计划刷新。
- 在非生产(“暂存”)实例上创建一个本地帐户,并使用该帐户来创建数据源。将数据源提供给管理员,以便编辑连接以指向生产实例、将数据源发布到 Tableau Cloud 或 Tableau Server,以及计划数据刷新。
- 要求管理员发布您需要的数据源。
日期范围选择可能会影响性能
当您应用日期筛选器时,执行分析时收集尽可能多的数据很有诱惑力,但是,从 ServiceNow ITSM 中检索记录可能很耗时间。Tableau 在检索数据之前并不知道特定日期范围内有多少数据。为此,您应首先限制日期范围,然后在评估性能之后再扩展。日期筛选器应用于以下表:metric_instance、change_request、事件、任务、问题。
为了能让您大致了解从 ServiceNow ITSM 中检索数据可能要花费多长时间,我们使用高速连接执行了一些测试。下表显示了在测试环境中检索给定数量的记录所花费的时间。
记录数 | 检索所花费的时间 |
---|---|
1,000 | 11 秒 |
10,000 | 2 分钟 |
100,000 | 18 分钟 |
数据访问疑难解答
对于 ServiceNow ITSM 用户
如果您在尝试访问数据时看到错误,例如“您无权访问此资源...”,请与 ServiceNow 管理员联系。
对于 ServiceNow 管理员
ServiceNow 使用访问控制列表 (ACL) 来指定哪些人可以访问哪些数据。通常,为 ServiceNow 执行者设置的默认权限足以让 Tableau 用户访问他们分析 ServiceNow ITSM 数据所需的内容。
Tableau 用户需要访问 ServiceNow 中关于表的元数据,这些数据可在下表中找到:
- sys_dictionary 表(有关列的元数据)
- sys_db_object 表(有关表的元数据)
- sys_glide_object 表(有关字段类型的元数据)
如果 Tableau 用户无法访问 ServiceNow ITSM 数据,请确保 ACL 为用户提供对上表的表级别和字段级别读取访问权限,并且没有锁定访问权限的脚本。
若要授予元数据表的访问权限,作为最佳做法,您可以考虑使用访问元数据表所需的 ACL 创建一个角色,然后将该角色分配给 Tableau 用户组。然后,您可以将 Tableau 用户分配给组,以便用户可以访问在 Tableau 中进行分析所需的数据。
有关创建 ACL 的信息,请参见 ServiceNow 网站上的 ServiceNow Access control list rules(ServiceNow 访问控制列表规则)(链接在新窗口中打开)。