创建触发器

触发器监视特定事件,然后在满足其条件时启动操作。 您可以使用 curl 命令或使用 WebSphere Automation REST API 的 Swagger UI 来创建触发器。

关于本任务

您必须有权访问 WebSphere Automation REST API ,并且必须通过单击 Swagger UI 页面上的 授权Red Hat OpenShift Container Platform 管理员凭证进行认证。

WebSphere Automation 中创建触发器

使用 WebSphere Automation REST API 的 Swagger 用户界面来创建新操作。 操作资源是位于 https://<cpd-route>/websphereauto/secvul/apis/openapi/ui/的 Swagger UI 中提供的 Self-Secure API 的一部分。 有关查找 <cpd-route> 的更多信息,请参阅查看 REST API

在 "自安全 API 的 Swagger UI" 页面上,执行以下步骤以创建触发器。

  1. 单击 发布/触发 以创建触发器。

    该部分将展开以显示 参数 选项卡,示例请求主体和模式以及响应。

  2. 单击 模式 以查看触发器模式。

    确保您熟悉每个参数的模式和可接受值。

  3. 单击试用

    现在可以编辑请求主体区域。

  4. 通过更改要修改的参数的冒号后面的引号中的值来修改请求主体。

    有关触发器资源参数的更多信息,请参阅触发器资源

    您可以使用 JSONata 外部链接图标 表达式提供条件处理,或将值从资源通知传递到操作。 更多信息,请参阅创建资源触发器验证 JSONata 表达式

  5. 单击 执行
  6. 检查响应代码。

    如果触发器有效,那么成功操作的响应代码为 201。 如果满足定义的条件,那么触发器处于活动状态,并且随时可以使用指定的 actionId 调用操作。

验证 JSONata 表达式

如果您通过触发器将资源通知中的数据传递给操作,或者如果您使用基于资源通知中数据的条件处理,您可以使用 JSONata Exerciser 验证您的 JSONata 表达式,网址为 https://try.jsonata.org/ 外部链接图标.

  1. 复制作为触发器基础的资源通知的完整 JSON 代码,并将其粘贴到 JSON 面板中。

    有关示例,请参阅触发器资源

  2. 在 JSONata 面板中创建 JSONata 表达式。

    例如,以下 JSONata 表达式对 create vulnerability 事件进行求值,以确定漏洞中的一个或多个 CVE 的严重性是否大于 9 (CVSS 级别为 0 到 10)。

    $count(vulnerability.cves[cvssBaseScore > 9 ]) > 0

    作为另一个示例,以下 JSONata 表达式

    $vulnerability.cves

    可能会传递类似于以下代码片段的数据:

    {
            "id": "CVE-2021-44228" ,
            "description": "Lorem ipsum dolor sit amet ..." ,
            "cvssBaseScore": 10
          }
    
  3. 第三个面板会自动使用表达式的结果进行更新。

    要将 JSONata 表达式用作 condition,该表达式必须是布尔值 (即,结果为truefalse)。 条件必须求值为true用于触发器以调用操作。

    如果要将数据从资源通知传递到操作,请确保表达式在语法上正确以传递所需值。