创建触发器
触发器监视特定事件,然后在满足其条件时启动操作。 您可以使用 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" 页面上,执行以下步骤以创建触发器。
- 单击 发布/触发 以创建触发器。
该部分将展开以显示 参数 选项卡,示例请求主体和模式以及响应。
- 单击 模式 以查看触发器模式。
确保您熟悉每个参数的模式和可接受值。
- 单击试用。
现在可以编辑请求主体区域。
- 通过更改要修改的参数的冒号后面的引号中的值来修改请求主体。
有关触发器资源参数的更多信息,请参阅触发器资源。
您可以使用 JSONata
表达式提供条件处理,或将值从资源通知传递到操作。 更多信息,请参阅创建资源触发器和验证 JSONata 表达式。
- 单击 执行。
- 检查响应代码。
如果触发器有效,那么成功操作的响应代码为 201。 如果满足定义的条件,那么触发器处于活动状态,并且随时可以使用指定的 actionId 调用操作。
验证 JSONata 表达式
如果您通过触发器将资源通知中的数据传递给操作,或者如果您使用基于资源通知中数据的条件处理,您可以使用 JSONata Exerciser 验证您的 JSONata 表达式,网址为 https://try.jsonata.org/ .
- 复制作为触发器基础的资源通知的完整 JSON 代码,并将其粘贴到 JSON 面板中。
有关示例,请参阅触发器资源。
- 在 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 }
- 第三个面板会自动使用表达式的结果进行更新。
要将 JSONata 表达式用作 condition,该表达式必须是布尔值 (即,结果为true或false)。 条件必须求值为true用于触发器以调用操作。
如果要将数据从资源通知传递到操作,请确保表达式在语法上正确以传递所需值。