ServiceNow CMDB数据同步

概述

CMDB的Rapid7 InsightVM集成是一个ServiceNow平台应用程序,提供端到端配置管理集成和自动化功能:

  • InsightVM资产标记
    • 基于ServiceNow CMDB CI数据标记InsightVM资产
  • ServiceNow资产导入
    • 基于InsightVM资产数据(包括资产漏洞和风险相关指标)创建和更新ServiceNow CMDB CI数据
  • InsightVM网站配置
    • 基于ServiceNow CMDB CI数据管理InsightVM站点范围

开始

安装

应用程序可以由ServiceNow实例管理员从ServiceNow Store安装:

https://store.servicenow.com/sn_appstore_store.do !/存储/应用程序/ a0bc721d1b13b3006a4a85507e4bcb87 /

初始设置

安装作用域应用程序CMDB(com.snc.CMDB.Scoped)插件的配置管理

应用程序的ServiceNow资产导入功能利用范围应用程序CMDB(com.snc.CMDB.Scoped)插件的配置管理。按照以下步骤在ServiceNow实例中安装它:

  1. 作为ServiceNow实例管理员,转到系统定义->插件模块:
  1. 在此模块中,搜索适用于Scoped应用程序的配置管理插件,点击安装
  1. 点击激活

创建“InsightVM”发现源

应用程序需要创建一个自定义的发现源,以方便识别集成导入/更新的资产。

  1. 作为ServiceNow实例管理员,转到系统定义->脚本-背景模块。
  1. 确保范围在模块中被设置为全球
  2. 运行以下脚本片段创建“InsightVM”发现源:
          
文本
1
var discoverySource = 'InsightVM';
2
var gr = new GlideRecord('sys_choice');
3.
gr.addQuery('element','discovery_source');
4
gr.addQuery(“名字”,“cmdb_ci”);
5
gr.addQuery('value',discoverySource);
6
gr.query();
7
如果(! gr.hasNext ()) {
8
var grNew = new GlideRecord('sys_choice');
9
grNew.initialize();
10
grNew。setValue(“元素”,“discovery_source”);
11
grNew.setValue('name','cmdb_ci');
12
grNew。discoverySource setValue(“价值”);
13
grNew。setValue(“标签”,discoverySource);
14
如果(! grNew.insert ()) {
15
gs.info('添加发现源失败:' + discoverySource);
16
17

创建InsightVM连接

为了建立到InsightVM安全控制台的连接,应用程序使用InsightVM连接配置。要配置一个,请遵循以下步骤:

  1. 首先为应用创建一个InsightVM用户帐户
    • 用户需要访问所有站点所有资产组,以及以下权限:管理站点、管理标记、查看组资产数据、创建报告。
  1. 创建用户后,导航到用于CMDB的快速7 InsightVM集成-> InsightVM连接模块。
  1. 点击创建新的InsightVM连接配置。
  2. 为连接输入用户友好的名称。
  3. 完成表单的其余部分并单击提交

ServiceNow需要配置MID服务器

如果您没有配置ServiceNow MID服务器,请搜索MID服务器安装模块以获取关于ServiceNow MID服务器安装和配置的说明。MID服务器安装时应具有与InsightVM Security Console主机web界面的网络可访问性。

为保证集成的可靠运行,MID服务器应与InsightVM安全控制台位于同一网络区域。例如,如果InsightVM安全控制台位于美国,则MID服务器也应该位于美国。

InsightVM连接配置示例如下所示:

需要的角色

为了使用该应用程序,您将需要是ServiceNow管理员,或具有应用程序分配给用户的角色之一:

  • x_r7_rapid7_cmdb_i.集成管理
    • 访问所有应用程序模块
  • x_r7_rapid7_cmdb_i.asset_tagging_用户
    • 访问所有InsightVM资产标签集成模块
  • x_r7_rapid7_cmdb_i.asset_import_user
    • 访问所有ServiceNow资产导入集成模块
  • x_r7_rapid7_cmdb_i.site_配置_用户
    • 访问所有InsightVM Site Configuration集成模块

配置

应用程序中的每个集成都提供了三个模块:

  1. 工作
    • 使用调度选项指定配置运行频率的单个集成配置。
  2. 地图
    • 工作的单独配置。每个集成作业可以包含一个映射列表。对应集成的配置文档中提供了每种映射类型的详细信息。
  3. 运行统计数据
    • 从集成的每个作业执行中提供的高级统计信息。

InsightVM资产标记

InsightVM资产标记集成提供了使用ServiceNow CMDB CI(配置项)记录中的数据标记InsightVM发现的资产的功能。这可用于为InsightVM资产上的数据(如位置、业务所有者和ServiceNow CMDB中可用的任何其他字段)提供上下文。

由集成创建的标记由集成端到端管理,这意味着它们在每次运行集成作业时都被创建、更新和可选地删除。

工作

每个InsightVM资产标签集成作业都包含以下配置选项:

描述

名称

集成作业配置的友好名称

InsightVM连接

用于InsightVM请求的连接(资产/标签数据报告生成和标签操作)

标签前缀

由集成管理的标记的前缀。只有带有这个前缀的标签才会被集成更新。

标记名映射

从CMDB CI数据中创建的标记。每个标记包括一个CMDB CI表选择、一个字段(其值将是标记名称的后缀)和标记的类型。

删除空标签

如果没有资产与标签相关联,是否应该删除带有定义的标签前缀的标签。

InsightVM范围

用于InsightVM站点、标记和要包含在标记范围内的资产组的名称的逗号分隔的正则表达式模式。

时间表

运行标记的频率。不应该安排得太频繁,以致集成同时运行多次。

建议:每天1小时内进行最少的InsightVM扫描。

作业配置示例如下所示:

标记名映射

标签名称映射用于定义哪些标签由资产标签特性创建/更新。对于特定集成作业范围内的每个InsightVM资产,将根据标记配置中指定的表执行CMDB CI查找。如果找到CMDB CI,则使用每个CI的字段值创建/更新标签,格式如下:[标签前缀][字段值)

标签名映射的显示名是根据配置动态生成的,格式如下:(表)。[领域]:[型].应用程序中包含的默认Tag Name Map配置如下:

  • cmdb_ci_computer.assignment_group.name:老板
  • cmdb\u ci\u计算机。位置。名称:位置
  • cmdb_ci_computer.owned_by.name:老板
  • cmdb\u ci\u计算机。系统类名称:自定义

描述

表格

包含标记的CMDB CI的表。

过滤器

筛选器以限制标记的CMDB CI搜索范围。

字段,其值将用于创建/更新InsightVM Tags,并与匹配CI的资产相关联。

类型

标记的类型

查询字段

基于InsightVM数据搜索匹配CI时使用的字段。InsightVM数据检索包括资产的主机名、IP地址和MAC地址。

注意:字段应用于针对指定表的OR查询。

IP地址字段

字段,用于根据资产的IP地址搜索CIs。

MAC地址字段

用于根据资产的主机名搜索CI的字段。

主机名称字段

用于根据资产的主机名搜索CI的字段。

标签名称映射配置示例如下所示:

运行统计数据

每次运行InsightVM资产标记集成时都会记录运行统计信息。统计数字包括以下详情:

  • 开始
    • 集成作业开始的日期和时间
  • 结束
    • 集成作业结束的日期和时间。如果集成作业运行失败,则该字段将为空,直到下一次运行的集成作业更新该字段。
  • 标签创建的
    • 基于标签名称映射配置和ServiceNow CMDB CI字段数据创建的标签数量
  • 标签更新
    • 从运行中更新关联的标记的数量
    • 注意:每次运行都会更新标记,即使不需要更改。标记是批量更新的,这意味着在集成作业运行期间,只对更新的每个标记资产关联发出一个请求。
  • 标签删除
    • 在集成作业运行期间,由于不再有与该标记关联的资产而删除了带有已定义集成前缀的标记的数量
    • 注意:只有在InsightVM资产标记作业配置中启用了“删除空标记”选项时,才会删除标记。
  • 标记资产
    • 集成作业运行期间标记的唯一InsightVM资产数。
  • 无与伦比的资产
    • 在集成作业运行期间未识别匹配CI的资产数。

InsightVM网站配置

InsightVM站点配置集成提供了基于ServiceNow CMDB CI数据和范围(包括具有这些字段值的CI的IP地址和/或主机名)创建和更新具有站点名称的InsightVM站点的功能。

例如,a站点名称图[company.name] - [location.name]以及公司名称为“Rapid7”和地点名称为“Boston”的CI记录,得到的InsightVM站点将是斯努拉皮德7-波士顿(使用默认站点名称前缀时)。配置的表和筛选器返回的每个附加资产站点名称图将其IP地址和/或主机名添加到该站点的作用域。

工作

每个InsightVM Site Configuration集成作业包含以下配置选项:

描述

名称

站点配置作业记录的友好名称

InsightVM连接

用于InsightVM请求的InsightVM连接(站点操作)

网站名称前缀

由集成管理的站点的前缀。只有具有定义前缀的站点才会被集成更新。

网站名称映射

将创建InsightVM站点的站点名称映射列表(表和字段列表值)。最多可以使用5个字段值。

删除空站点

是否应该删除在其范围内没有资产的站点。在处理完所有CI记录之后,将不会创建没有范围的新站点。

时间表

运行站点配置的频率。不应该安排得太频繁,以致集成同时运行多次。建议:每天1小时内进行最少的InsightVM扫描。

下面是InsightVM Site Configuration集成配置的示例:

网站名称映射

站点名称映射定义用于构造站点名称的字段。每个Site Name Map最多可以包含所选表上的5个字段,站点的名称将从这些字段构建。例如,给定站点配置记录定义的以下字段:

  1. Company.name
  2. 地点、城市
  3. sys_class_name

分隔符为“-”时,两个示例站点名称为:

  1. Rapid7-Boston-cmdb_ci_linux_server
  2. Rapid7-Chicago-cmdb_ci_computer

应用程序中包含一个默认站点名称映射:

  • company.name-location.name (cmdb_ci_computer)

“站点名称地图”的配置详细信息如下:

描述

表格

包含CMDB CIs的表,字段值将用于构建站点名称。

过滤器

筛选器以限制CMDB CI搜索站点配置的范围。

名称字段(1-5)

最多五个字段值,用于按顺序构造InsightVM站点的名称。

当当前可见的字段选择器被值填充时,会显示额外的字段选择器。

分隔符

构造站点名称时在每个字段值之间添加的分隔符。

空的字段值

当CI上的字段没有值时,要在该字段的站点名称中使用的值。

网站范围值

值应包括在站点的站点范围内。

IP地址字段

字段,该字段的值将添加到InsightVM站点的范围中。在将IP地址纳入站点的范围之前,集成将对IP地址进行验证。仅支持IPv4地址。

主机名字段

字段,该字段的值将添加到InsightVM站点的范围中。

下面是站点名称地图配置的示例:

运行统计数据

每次运行InsightVM Site Configuration集成时都会记录运行统计信息。统计数据包括以下细节:

  • 开始
    • 集成作业开始的日期和时间
  • 结束
    • 集成作业结束的日期和时间。
    • 如果集成作业运行失败,则该字段将为空,直到下一次运行的集成作业更新该字段。
  • 网站创建
    • 在集成作业运行期间创建的站点数。
  • 网站更新
    • 在集成作业运行期间更新的站点数。
  • 网站删除
    • 在集成作业运行期间删除的站点数量。

ServiceNow CMDB资产导入

ServiceNow CMDB资产导入集成提供了将InsightVM资产数据摄取到ServiceNow CMDB中的功能。为每个资产导入的数据包括:

  • IP地址
  • MAC地址
  • 主机名
  • 操作系统
  • InsightVM连接名
  • 资产ID
  • 风险评分
  • 上次评估漏洞(日期和时间)
  • 临界标签
  • 漏洞计数
  • 关键漏洞数
  • 严重的漏洞数
  • 中等脆弱性计数

重要的

只有通过InsightVM发现的主机名对应的资产才可以导入。

在cmdb_ci_hardware表上创建供此集成使用的列包括:

  • Rapid7资产ID (x_r7_rapid7_cmdb_i_rapid7_asset_id)
  • Rapid7 InsightVM连接名称(x_r7_Rapid7_cmdb_i_Rapid7_InsightVM_连接_名称)
  • Rapid7风险评分(x_r7_rapid7_cmdb_i_rapid7_risk_score)
  • Rapid7上次评估的漏洞(x_r7_Rapid7_cmdb_i_Rapid7_上次评估的漏洞)
  • Rapid7临界性标签(x_r7_Rapid7_cmdb_i_Rapid7_临界性标签)
  • Rapid7漏洞(x_r7_rapid7_cmdb_i_rapid7_vulnerabilities)
  • Rapid7关键漏洞(x_r7_rapid7_cmdb_i_rapid7_critical_vulnerability)
  • Rapid7严重漏洞(x_r7_Rapid7_cmdb_i_Rapid7_严重漏洞)
  • Rapid7中度漏洞(x_r7_Rapid7_cmdb_i_Rapid7_中度漏洞)

根据从InsightVM检索到的资产的操作系统值,可以通过配置将特定的CMDB类与导入的资产关联起来CMDB类地图

注:如无匹配CMDB类映射,它将不会被导入到CMDB中。为了确保导入范围内的所有资产,可以使用通配符CMDB Class Map来为这些记录分配一个通用的CMDB类。所包括的默认的电脑map提供了这一功能。

工作

每个ServiceNow资产导入集成作业包含以下配置选项:

描述

名称

ServiceNow资产导入作业记录的友好名称

InsightVM连接

用于InsightVM请求的连接(生成资产数据报告)

CMDB类地图

将InsightVM资产映射到CMDI CI类时要使用的CMDB CI类名称和操作系统名称正则表达式模式列表。注意,模式是按顺序处理的,使用第一个匹配项。为了确保未指定的操作系统仍然被导入,默认捕获所有操作系统.*模式应该作为最后的映射使用。

InsightVM范围

以逗号分隔的正则表达式模式,用于InsightVM站点、标记和资产组的名称,以进一步确定要导入CMDB的资产的范围。

时间表

运行资产导入的频率。不应该安排得太频繁,以致集成同时运行多次。

建议:每天1小时内进行最少的InsightVM扫描。

作业配置示例如下所示:

CMDB资产导入表单

CMDB类地图

CMDB类映射定义不分大小写正则表达式模式在处理InsightVM资产导入CMDB时使用。当找到匹配的正则表达式模式时,资产的CMDB Class被设置为为类映射配置的那个。在ServiceNow资产导入作业记录中,CMDB类映射被顺序处理,并使用第一个匹配项。

集成过程中包含的CMDB类映射记录如下:

  • Linux服务器
  • Windows服务器
  • Windows工作站
  • MacOS设备
  • VMware
  • 默认的电脑

通常,CMDB类映射应该按照特异性的降序列出,例如指定模式的Windows Server类映射windows服务器应该出现在列表中指定的模式之前窗户

如果没有找到匹配项,则不会导入资产。因此,建议在作业记录中的CMDB类映射列表的底部使用通配符模式。

CMDB类映射记录的详细信息如下:

描述

名称

CMDB类映射的友好名称

CMDB类

当找到与正则表达式模式匹配时,要分配给导入资产的CMDB类名

正则表达式

不区分大小写的正则表达式模式,用于根据InsightVM中的资产操作系统名称进行测试

运行统计数据

每次运行ServiceNow资产导入集成时都会记录运行统计信息。统计数字包括以下详情:

  • 开始
    • 集成作业开始的日期和时间
  • 结束
    • 集成作业结束的日期和时间。
    • 如果集成作业运行失败,则该字段将为空,直到下一次运行的集成作业更新该字段。
  • 独联体插入
    • 基于使用ServiceNow标识引擎的查找而标识为新(未在CMDB中找到)的InsightVM资产数。
  • 独联体更新
    • 使用ServiceNow标识引擎查找并更新的InsightVM资产的数量。
  • 独联体删除
    • 在运行期间从CMDB中删除的CIs的数量。
    • 注意:这可能是来自识别引擎的响应,但集成本身不会发出CI删除请求。
  • 独联体不变
    • 具有与InsightVM提供的数据相同的现有CI的InsightVM资产数量。
  • 识别错误
    • 没有匹配的InsightVM资产数量CMDB类映射被发现。
    • 这也可能与导入单个InsightVM资产过程中的其他错误有关。
    • 应用程序日志提供了每个识别错误的详细信息。
    • 注意:如果有意将作业配置配置为不匹配所有操作系统(通过排除通配符类映射),则集成仍将提供标识错误统计信息。

运行集成

一旦配置了集成作业记录,就有两种方法来运行每个集成:

  1. 为集成定义作业配置计划
  2. 在查看现有的集成配置时,单击“Execute Now”按钮

注意:如果为特定集成配置了多个作业(即InsightVM资产标记),则不应以会导致两个作业重叠的频率安排这些作业。当集成作业启动时,从该集成的任何正在运行的作业中删除临时数据;因此,首先启动的正在运行的作业将无法成功完成。用于单独集成的作业可以并发运行而不会发生冲突。

每个积分将记录它的开始和结束到诊断- >日志模块。此外,与集成作业运行有关的详细信息也记录到应用程序日志中。注意,一些日志消息可能在日志查看(即使按时间戳排序)在同一秒内写入日志的时间。

InsightVM资产标记运行详细信息

工作流程

下图展示了InsightVM资产标签集成的工作流程:

运行日志

在运行InsightVM Asset Tagging集成期间,会提供以下信息日志,以识别集成所执行的特定操作。

集成开始

集成开始时,以下消息将写入应用程序日志:

         
1
启动asset_tagging集成运行
InsightVM数据收集

集成根据作业记录中定义的配置从InsightVM安全控制台收集以下数据:

  • 范围资产信息
  • 带有配置集成前缀的现有标记

为了收集这些数据,集成创建了两个后台作业:

  • 资产标记资产数据导入作业
  • 资产标记标记数据导入作业

第三个后台作业“数据导入后资产标记更新标记”检查这两个作业的状态。一旦这些作业收集了资产和标记数据,此作业将开始标记创建/更新/删除过程。

当成功调度后台作业时,类似如下的消息将被记录:

         
1
数据导入后已成功计划作业,名称为资产标记更新标记,系统id:0D8451151B65441015B63335CC4BC95

一旦作业完成,它就会被集成删除。InsightVM数据收集任务将在InsightVM中创建、生成、导入和删除报表(数据导入后)。与此进程相关的其他消息也将被记录。

标记创建/更新/删除过程

导入InsightVM安全控制台的数据后,进行标签操作。这包括确定需要创建哪些标签,需要与每个标签关联哪些资产,以及如果启用了“删除空标签”配置选项,需要删除哪些标签。

标记过程开始时,将记录以下消息:

         
1
更新标签关联……

与标记过程相关的日志如下所示:

标签创建

对于标签创建,类似以下的消息将被记录:

         
1
已创建名为sn_Linux Server的标记,类型:CUSTOM
标签更新

对于标签更新,类似以下的消息将被记录:

         
1
添加2个资源到标签sn_Computer
2
更新的标签ID: 447
标记删除

如果有需要删除的标签,并且启用了该选项,将记录类似以下的消息,以表明该进程的开始:

         
1
删除5个不再有资产的标签

对于每一个被删除的标签,都将记录一个类似如下的消息:

         
1
删除标记sn_NoMoreAssets:自定义
完成

在集成运行完成时,将记录与作业清理相关的多个消息。此外,将记录以下表示运行成功的消息:

         
1
已完成资产标记集成运行

InsightVM站点配置运行详细信息

工作流程

下图展示了InsightVM Site Configuration集成的工作流程:

运行日志

在InsightVM Site Configuration集成运行过程中,会提供以下信息日志,以识别集成执行的具体操作。

集成开始

集成开始时,以下消息将写入应用程序日志:

         
1
启动site_configuration集成运行
网站创建

在InsightVM中创建站点时,将记录类似以下内容的消息:

         
1
已成功创建名为sn_Rapid7-Boston的InsightVM站点
网站更新

当InsightVM站点范围更新时,会记录类似如下信息:

         
1
更新站点sn_Rapid7-Boston范围,包含57个地址
站点删除

如果有空范围的站点,并启用了“删除空站点”配置选项,每个被删除的站点都会记录类似如下的消息:

         
1
已删除范围为空的站点sn_Rapid7-Boston
完成

在集成运行完成时,将记录以下表示运行成功的消息:

         
1
已完成站点配置集成运行

ServiceNow CMDB资产导入运行详细信息

工作流程

下面的图表说明了ServiceNow资产导入集成的工作流:

运行日志

在- ServiceNow CMDB资产导入集成运行期间,提供以下信息日志,以识别集成执行的具体操作。

集成开始

集成开始时,以下消息将写入应用程序日志:

         
1
启动asset_import集成运行
InsightVM数据收集

集成根据作业记录中定义的配置从InsightVM安全控制台收集以下数据:

  • 范围资产信息

为了收集这些数据,集成创建了一个后台作业:

  • Asset Import资产数据导入作业

当成功调度后台作业时,类似如下的消息将被记录:

         
1
成功调度任务,名称为Asset Import Asset Data Import job, sys_id: 0d8451151b65441015b63335cc4bcb95
CMDB资产导入

作为资产导入资产数据导入作业的一部分,InsightVM的报告数据被导入到一个临时集成表中;在导入过程中,导入到ServiceNow CMDB中。

报告中的每个InsightVM资产都是基于为配置定义的CMDB类图进行处理的,这些类图用于识别与InsightVM资产关联的CMDB类。然后使用ServiceNow标识引擎API根据资产的主机名查找资产。使用的名字字段时,CI将被更新。只有由InsightVM发现的主机名资产才会通过集成导入到CMDB中。在该场景中,ServiceNow环境的Identification Engine查找需要一个额外的字段,查找将会失败,资产将不会作为CMDB CI记录导入ServiceNow。

进口开始

当资产导入过程开始时,会记录以下消息:

         
1
正在开始ServiceNow CMDB资产导入过程。。。

注意:为了减少与导入过程相关的日志消息的数量,在导入过程中只记录错误消息。不记录成功的CI创建/更新操作。

识别错误

集成系统会记录识别错误。如果未找到特定InsightVM资产操作系统的匹配CMDB类映射,则不会导入该资产。

为了表明没有为资产找到匹配的CMDB类映射,一个类似以下的消息的详细信息被记录:

         
1
Failed to find an OS -> Class mapping for source data, {"ip_address":"192.168.1.1","mac_address":"00:00:00:00:00 ","name":"WindowsServer1"," OS ":"Microsoft WindowsServer 2012 R2 Standard Edition"}, cannot continue!配置系统ID: d3c5ffb01b21041015b63335cc4bcb64

注意:如果ServiceNow CMDB资产导入作业配置故意省略通配符模式以确保导入所有资产,则仍将记录这些错误;然而,它们可以被忽略。

导入错误

资产导入过程中标识错误之外的任何错误也将被记录。

导入完成

当资产导入过程完成时,将会记录一条类似如下的消息:

         
1
在CMDB CI集成期间总共处理了34个记录
完成

在集成运行完成时,将记录与作业清理相关的多个消息。此外,将记录以下表示运行成功的消息:

         
1
完成asset_import集成运行

常见问题解答

集成运行需要多长时间?

集成运行的持续时间取决于许多因素:

  • InsightVM主机资源
  • InsightVM资产数
  • ServiceNow数据导入性能

日志通常显示每个集成正在执行的操作。此外,运行统计数据模块可以提供对每个集成标记运行多长时间的洞察,因为它为每个标记提供了“开始”和“结束”指标。

运行集成的频率是多少?

考虑到扫描或CMDB更新频率等因素,可以尽可能频繁地运行集成。应用程序强加的唯一要求是与多个作业的集成不重叠。例如,两个InsightVM资产标记集成作业可能不会同时运行,但一个InsightVM资产标记作业和一个ServiceNow资产导入作业可能会同时运行。

可以为同一个集成配置多个作业吗?

可以配置尽可能多的作业来促进所需的数据同步工作流,只要特定集成的一个作业在给定时间内运行即可。不同的作业可以在独立的频率上运行,甚至可以连接到独立的InsightVM安全控制台。

故障排除

诊断

诊断模块提供了对应用程序日志的访问,以及对一些内部组件的访问,以便进行故障诊断。该模块中的模块包括:

  • 日志
    • 应用程序提供的所有集成的日志
    • 注意:如果应用程序没有捕获到异常,则该异常将不会出现在该模块下。如果要对运行故障或其他问题进行故障排除,还建议检查系统日志->系统日志->所有模块以获取更多细节。
  • 整合内部工作
    • 用于InsightVM资产标签和ServiceNow资产导入集成的瞬时后台任务表
  • 数据源
    • 用于从InsightVM导入数据的InsightVM Asset Tagging和ServiceNow Asset Import集成所使用的应用数据源列表。

调试水平日志

如果需要额外的日志记录,您可以通过以下步骤启用调试级别日志记录:

  1. 在ServiceNow筛选器导航(主要搜索)中,输入sys_properties.list进入过滤器菜单并点击输入
  2. 挑选使用以下信息创建一个新属性:
    • 名称x_r7_rapid7_cmdb_i.logging.verbosity
    • 选择调试信息、警告、错误
    • 价值调试
  3. 保存后,退出,然后重新登录到ServiceNow以启用调试日志记录。

避免财产冲突

如果在步骤2中创建的属性已经存在,则在保存时将发生错误。如果发生这种情况,请使用上述信息更新现有记录,而不是创建一个新属性。

常见问题

集成无法运行

当尝试在先前失败后运行集成时,您可能会在应用程序日志中看到以下错误:

         
1
集成已经在运行,一次只能运行一个集成实例

此错误可能是由于下列情况之一:

  • 集成的有效作业已经在运行。
  • 文件中的陈旧记录内部集成工作先前作业中未清理的表正在阻止集成再次运行。

如果有有效的作业正在运行,请等待该作业完成。否则,请按照以下步骤清理内部集成工作表:

  1. 通过转到针对CMDB的Rapid7 InsightVM集成->诊断->内部集成作业模块并验证列出的记录。
  2. 系统定义->脚本-背景模块,并输入以下脚本:
         
1
var gr = new GlideRecord('x_r7_rapid7_cmdb_i_integration_job');
2
gr.query()
3.
gr.deleteMultiple()
  1. 验证范围被设置为全球的
  2. 点击运行脚本执行脚本。

如果脚本成功运行,您将看到一条消息,指示从x_r7_rapid7_cmdb_i_integration_job表格

成功删除陈旧的内部集成作业记录

如果脚本执行失败,请尝试使用范围设置为CMDB的Rapid7 InsightVM集成

访问另一个应用程序的资源

当集成被配置为访问它所拥有的表(或其他资源)之外的表时,它需要ServiceNow中所说的跨范围访问。如果没有跨范围访问,集成将无法执行。默认情况下,集成配置了对以下CMDB表的跨范围访问:

  • cmdb_ci
  • cmdb_ci_计算机

需要跨范围访问的一些例子:

  • 如果标签名称映射的Table属性被设置为cmdb\u ci\u vmware\u实例
  • 如果站点名称映射的表属性设置为cmdb_ci_win_服务器

这也适用于集成访问的任何自定义应用程序的资源。

要创建跨范围访问,在ServiceNow UI中执行以下步骤:

  1. 引导到系统应用>应用跨范围访问
  2. 挑选新纪录
    • 范围:用于CMDB的Rapid7 InsightVM集成
    • 目标范围:{{Target Scope}}
    • 目标名称:{{目标名称}}
    • 目标类型:{{Target Type}
    • 操作:{{操作}}
    • 状态:允许

在提交更改之前,应该执行用适当的值填充占位符值的操作。

例如,如果集成需要从cmdb\u ci\u vmware\u实例因为有一个自定义的标签名称映射,跨范围访问记录看起来类似于:

  • 范围:用于CMDB的Rapid7 InsightVM集成
  • 目标范围:全球
  • 目标名称:cmdb\u ci\u vmware\u实例
  • 目标类型:表
  • 操作:读
  • 状态:允许

ServiceNow资产导入集成未导入任何资产

未创建InsightVM发现源

应用日志中的错误提示如下:应用的'InsightVM'发现源未创建:

          
文本
1
IdentificationEngine错误请求:{“物品”:[{“类名”:“cmdb_ci_linux_server”、“查找”:[{“类名”:“cmdb_ci_network_adapter”、“价值观”:{“ip_address”:“192.168.1.1”、“mac_address”:“00:00:00:00:00:00}}],“值”:{“ip_address”:192.168.1.1”、“mac_address”:“00:00:00:00:00:00”、“名称”:“linux1”、“操作系统”:“Ubuntu Linux 16.04”,“sys_class_name cmdb_ci_linux_server“:}}},反应:{"items":[{"sysId":"Unknown","identifierEntrySysId":"Unknown","errors":[{"error":"INVALID_INPUT_DATA","message":"In payload invalid data source [InsightVM] exist. "items":[{"sysId":"Unknown","identifierEntrySysId":"Unknown","errors":[{"error":"INVALID_INPUT_DATA","message":"In payload invalid data source [InsightVM] exist. "您需要从表[cmdb_ci]"}]," identiationattempts ":[]},"relations":[],"logContextId":"b9b87bb41b21041015b63335cc4bcbbe"}中的字段[discovery_source]提供一个有效的选择值。

上述日志中的“消息”部分显示以下消息,“有效负载中存在无效数据源[InsightVM]。您需要从表[cmdb\U ci]中的字段[discovery\U source]中提供有效的选择值”,指示未创建发现源。按照中的步骤进行操作初始设置部分来配置发现源,然后再次尝试运行作业。

未安装作用域应用程序CMDB插件的配置管理

提示以下错误信息,表示没有安装Scoped Apps CMDB (com.snc.cmdbb.scoped)插件。按照本指南的初始安装部分的说明安装插件,然后再次尝试运行作业。

         
1
CMDB (com.snc.cmdb.scoped)插件未安装。

CMDB CI集成期间共处理了0条记录

InsightVM范围配置

回顾InsightVM范围配置作业,并验证是否应基于定义的正则表达式模式包括资产。

CMDB类映射配置

回顾CMDB类地图为作业配置定义,并验证作业范围内的资产具有与这些模式匹配的操作系统。

如果未找到资产的CMDB类映射匹配项,将记录类似于以下内容的消息:

         
1
Failed to find an OS -> Class mapping for source data, {"ip_address":"192.168.1.1","mac_address":"00:00:00:00:00 ","name":"WindowsServer1"," OS ":"Microsoft WindowsServer 2012 R2 Standard Edition"}, cannot continue!配置系统ID: d3c5ffb01b21041015b63335cc4bcb64

InsightVM连接问题

身份验证失败

类似于以下内容的日志消息表示InsightVM安全控制台的身份验证失败:

         
1
site_configuration integration failed to run: {"message":"An error occurred executing the page REST request for Rapid7 VM endpoint: /api/3/sites, method: undefined, error: error: There was An error检索page endpoint的结果错误。错误:提供的凭据无效。"}

验证分配给集成作业配置的InsightVM连接的凭据和主机信息,并再次尝试运行该作业。

安全控制台下来

类似于以下内容的日志消息可能表示InsightVM安全控制台主机可能已关闭或无响应:

         
1
site_configuration integration failed to run: {"message":"An error occurred executing the page REST request for Rapid7 VM endpoint: /api/3/sites, method: undefined, error: error: There was An error检索page endpoint的结果错误。错误:提供的凭据无效。"}

手动查看“InsightVM Security Console”应用状态和主机状态。如果需要帮助来恢复Security Console应用程序的服务,请联系Rapid7支持。

ServiceNow连接问题

中间服务器连接问题

的ServiceNow MID服务器可能存在问题InsightVM连接在集成作业配置上:

         
1
asset_import integration failed to run: {"message":"An error occurred executing the page REST request for Rapid7 VM endpoint: /api/3/sites/, method: undefined, error:com.glide.ecc. "ECCResponseTimeoutException: No response for ECC message request with sysid=1a5d1e091ba9041015b63335cc4bcb75 after waiting for 30 seconds in ECC Queue"}

要查看MID服务器的状态,请转到中间服务器->服务器在ServiceNow模块。关于MID服务器上的连接问题的解决方法,请参阅ServiceNow的文档。

InsightVM资产标记集成未创建任何标记

InsightVM范围配置

回顾InsightVM范围配置作业,并验证是否应基于定义的正则表达式模式包括资产。

标签名称映射配置

回顾标记名映射配置作业配置,并验证所选字段中的数据是否可用。还要确保选中的IP地址主机名,MAC地址字段对于所选数据库上的记录来说是正确的表格

没有资产分配给InsightVM标签

ServiceNow中端服务器最大有效负载大小

根据环境的大小,集成作业生成的报告可能会在ServiceNow中间服务器和ServiceNow平台之间产生非常大的响应。中型服务器最大负载大小默认值为20 MB,满足大多数客户的需求。但是,如果在运行作业时出现此错误,则表示由于响应大小,MID服务器无法满足请求:{“消息”:“收到非正常状态代码(0),响应:null”“}

要避免这个问题,请增加最大有效载荷大小。更多信息可以参考ServiceNow知识库文章:https://hi.service-now.com/kb_view.do?sysparm_article=KB0748591

您可以通过以下步骤全局或每台MID服务器定义最大负载大小:

  1. 在servicennow中,转到中间服务器>属性
  2. 创建一个新属性。
    1. 名称:mid.eccq.max_payload_size
    2. 值:40000000
  3. 可以全局设置,也可以为特定的MID服务器设置。
  4. 在ServiceNow界面中保存并重启MID服务器。

InsightVM站点配置集成未创建任何站点

站点名称地图配置

回顾网站名称映射,验证所选的作业配置上是否存在ci表格,并确保该表上的CIs具有所选的值字段名称(1 - 5)

导入的资产未分配正确的CMDB类

属性中定义的正则表达式模式CMDB类地图,并尝试再次运行该作业。

在标记名称映射或站点名称映射配置中,并非所有表都会在表下拉列表中列出

该应用程序仅支持cmdb_ci标签名称映射和站点名称映射配置的前缀表。

并非所有字段都列在标记名称映射或站点名称映射配置的字段**下拉列表中

应用程序仅支持类型为的值字符串在选择选择器。

保存连接时收到“从作用域'Rapid7 InsightVM Integration for CMDB'对脚本包括'SysRelatedList'的执行操作被拒绝”错误

当“Rapid7 InsightVM Integration for CMDB”应用程序无法执行包含for的脚本时,会发生此问题SysRelatedList在保存连接时导致一条失败消息。

CMDB权限错误

可以通过在ServiceNow中导航到以下位置来解决此问题:

  • 系统应用>应用跨范围访问
  • 新纪录
    • 范围:用于CMDB的Rapid7 InsightVM集成
    • 目标范围:全球
    • 目标名称:SysRelatedList
    • 目标类型:脚本包含
    • 操作:执行API
    • 状态:允许

ServiceNow CMDB跨作用域权限

一旦创建了应用程序跨范围访问记录,您现在就能够创建连接,而不会收到save denied错误。