ServiceNow ITSM 连接器和操作

编辑

ServiceNow ITSM 连接器和操作编辑

ServiceNow ITSM 连接器使用 导入集 API 创建 ServiceNow 事件。您可以将连接器用于规则操作和案例。

在 Kibana 中创建连接器编辑

您可以在 堆栈管理 > 连接器 中创建连接器,也可以在创建规则时根据需要创建。您必须选择使用 OAuth 进行身份验证。

ServiceNow connector using basic auth
ServiceNow connector using OAuth
连接器配置编辑

ServiceNow ITSM 连接器具有以下配置属性

客户端 ID
分配给您的 OAuth 应用程序的客户端标识符。
客户端密钥
分配给您的 OAuth 应用程序的客户端密钥。
JWT 验证器密钥 ID
分配给您的 OAuth 应用程序的 JWT 验证器映射的密钥标识符。
密码
用于 HTTP 基本身份验证的密码。
私钥
您为在 ServiceNow 中使用而创建的 RSA 私钥。
私钥密码
RSA 私钥的密码。如果您为私钥设置了密码,则需要此值。
ServiceNow 实例 URL
ServiceNow 实例的完整 URL。
使用 OAuth 身份验证
默认情况下,使用基本身份验证而不是开放授权 (OAuth)。
用户标识符
用于 OAuth 类型身份验证的标识符。此标识符应为您在设置过程中选择的用户信息字段。例如,如果选择的用户信息字段为 Email,则用户标识符应为用户的电子邮件地址。
用户名
用于 HTTP 基本身份验证的用户名。

测试连接器编辑

创建或编辑连接器时,使用 测试 选项卡测试其操作

ServiceNow params test

ServiceNow ITSM 操作具有以下配置属性。

附加评论
供客户端使用的其他信息,例如如何解决问题。
类别
事件的类别。
关联显示
用于在 ServiceNow 中进行关联的警报的描述性标签。
关联 ID

使用相同关联 ID 的连接器将与同一个 ServiceNow 事件关联。此值决定是创建新的 ServiceNow 事件还是更新现有的事件。修改此值是可选的;如果未修改,则规则 ID 和警报 ID 将组合为 {{ruleID}}:{{alert ID}} 以在 ServiceNow 中形成关联 ID 值。此值的字符长度最大为 100 个字符。

使用 {{ruleID}}:{{alert ID}} 的默认配置可确保 ServiceNow 为每个使用唯一警报 ID 生成的警报创建单独的事件记录。如果规则生成使用相同警报 ID 的多个警报,则 ServiceNow 会为该警报创建并持续更新单个事件记录。

描述
有关事件的详细信息。
影响
事件对业务的影响。可以通过受影响的用户数量或对相关业务的严重程度来衡量。
严重性
事件的严重程度。
简短描述
事件的简短描述,用于搜索知识库的内容。
子类别
事件的类别。
紧急程度
事件解决可以延迟的程度。

当您创建使用 ServiceNow ITSM 连接器的规则时,其恢复操作会根据关联 ID 关闭 ServiceNow 事件。如果有多个事件与关联 ID 匹配,则会关闭该 ID 的最新打开事件。

连接器网络配置编辑

使用 操作配置设置 自定义连接器网络配置,例如代理、证书或 TLS 设置。您可以设置适用于所有连接器的配置,也可以使用 xpack.actions.customHostSettings 设置每个主机的配置。

配置 ServiceNow编辑

ServiceNow 提供免费的 个人开发实例,您可以使用它们来测试事件。

先决条件编辑

从 Elastic Stack 版本 7.15.0 或更早版本升级到版本 7.16.0 或更高版本后,您必须在创建新的 ServiceNow ITSM 连接器或 更新现有连接器 之前,在您的 ServiceNow 实例中完成以下步骤

分配跨范围权限编辑

Elastic for ITSM 应用程序需要特定的跨范围权限记录才能成功运行。特别是,您必须为 Elastic for ITSM 应用程序拥有一个权限记录,该记录的状态设置为 Allowed,适用于以下每个目标

目标范围 名称 类型 操作

全局

GlideRecord.insert

可脚本化

执行 API

全局

GlideRecord.setValue

可脚本化

执行 API

全局

GlideRecordSecure.getValue

可脚本化

执行 API

全局

事件

读取

全局

ScriptableServiceResultBuilder.setBody

可脚本化

执行 API

全局

ScopedGlideElement

可脚本化

执行 API

要访问跨范围权限表

  1. 登录 ServiceNow 并将您的应用程序范围设置为 Elastic for ITSM。
  2. 单击 全部 并搜索 sys_scope_privilege

有关更多详细信息,请参阅 ServiceNow 产品文档

创建一个 ServiceNow 集成用户编辑

为了确保 Elastic 和 ServiceNow 之间的身份验证通信,请创建一个 ServiceNow 集成用户并为其分配适当的角色。

  1. 在您的 ServiceNow 实例中,转到 系统安全 → 用户和组 → 用户
  2. 单击 新建
  3. 填写表格,然后右键单击菜单栏并单击 保存
  4. 转到 角色 选项卡并单击 编辑
  5. 为集成用户分配以下角色: 

    • import_set_loader
    • import_transformer
    • personalize_choices
    • x_elas2_inc_int.integration_user
  6. 单击 保存
创建一个 CORS 规则编辑

Elastic 和 ServiceNow 之间的通信需要 CORS 规则。要创建 CORS 规则

  1. 在您的 ServiceNow 实例中,转到 系统 Web 服务 → REST → CORS 规则
  2. 单击 新建
  3. 按如下方式配置规则

    • 名称: 为规则命名。
    • REST API: 通过选择 Elastic ITSM API [x_elas2_inc_int/elastic_api] 将规则设置为使用 Elastic ITSM API。
    • : 输入 Kibana URL,包括端口号。
  4. 转到 HTTP 方法 选项卡并选择 GET
  5. 单击 提交 创建规则。
创建一个 RSA 密钥对并添加 X.509 证书编辑

此步骤是使用 OAuth 进行 Elastic 和 ServiceNow 之间身份验证所必需的。

创建一个 RSA 密钥对

  1. 使用 OpenSSL 生成 RSA 私钥

    openssl genrsa -out example-private-key.pem 3072
    openssl genrsa -passout pass:foobar -out example-private-key-with-password.pem 3072 

    使用 passout 选项为您的私钥设置密码。这是可选的,但如果您设置了密码,请记住您的密码。

  2. 使用 OpenSSL 生成匹配的公钥

    openssl req -new -x509 -key example-private-key.pem -out example-sn-cert.pem -days 360

    将 X.509 证书添加到 ServiceNow

  3. 在您的 ServiceNow 实例中,转到 证书 并选择 新建
  4. 按如下方式配置证书

    • 名称: 为证书命名。
    • PEM 证书: 将生成的公钥复制到此文本字段中。
    Shows new certificate form in ServiceNow
  5. 单击 提交 创建证书。
为外部客户端创建一个带有 JWT 验证器映射的 OAuth JWT API 端点编辑

此步骤是使用 OAuth 进行 Elastic 和 ServiceNow 之间身份验证所必需的。

  1. 在您的 ServiceNow 实例中,转到 应用程序注册表 并选择 新建
  2. 从选项列表中选择 为外部客户端创建一个 OAuth JWT API 端点

    Shows application type selection
  3. 按如下方式配置应用程序

    • 名称: 为应用程序命名。
    • 用户信息字段: 选择用作用户标识符的字段。
    Shows new application form in ServiceNow

    记住所选的用户信息字段。您将在创建连接器时将其用作 用户标识符值。例如,如果您为 用户信息字段 选择了 电子邮件,则您将使用用户的电子邮件作为 用户标识符值

  4. 点击 提交 创建应用程序。您将被重定向到应用程序列表。
  5. 选择您刚刚创建的应用程序。
  6. 找到 Jwt Verifier Maps 选项卡,然后点击 新建
  7. 按如下方式配置新记录

    • 名称: 为 JWT Verifier Map 命名。
    • 系统证书: 点击搜索图标,选择上一步创建的证书名称。
    Shows new JWT Verifier Map form in ServiceNow
  8. 点击 提交 创建验证器映射。
  9. 记下 客户端 ID客户端密钥JWT 密钥 ID。您将需要这些值来创建您的 ServiceNow 连接器。

    Shows where to find OAuth values in ServiceNow

更新已弃用的 ServiceNow ITSM 连接器编辑

在您将 Elastic Stack 版本升级到 7.16.0 或更高版本后,在 Elastic Stack 版本 7.15.0 或更早版本中创建的 ServiceNow ITSM 连接器将被标记为已弃用。已弃用的连接器在其名称后有一个黄色图标,并在选择时显示警告消息。

Shows deprecated ServiceNow connectors

已弃用的连接器将继续使用其添加的规则运行,并且可以分配给新规则。但是,强烈建议您更新已弃用的连接器或 创建新的连接器,以确保您可以访问连接器增强功能,例如更新事件。

要更新已弃用的连接器

  1. 打开主菜单,然后转到 堆栈管理 > 连接器
  2. 选择已弃用的连接器以打开 编辑连接器 侧边栏。
  3. 在警告消息中,点击 更新此连接器
  4. 完成 编辑连接器 侧边栏中的引导步骤。

    1. 安装 Elastic for ITSM 并完成 所需的先决条件
    2. 输入您的 ServiceNow 实例的 URL。
    3. 输入您的 ServiceNow 实例的用户名和密码。
  5. 点击 更新