<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>规则引擎 2.0 on DefectDojo Documentation</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/</link><description>Recent content in 规则引擎 2.0 on DefectDojo Documentation</description><generator>Hugo</generator><language>zh-hans</language><copyright>Copyright (c) 2020-2025 DefectDojo, Inc.</copyright><lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate><atom:link href="https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/index.xml" rel="self" type="application/rss+xml"/><item><title>关于 Rules Engine 2.0</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/about/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：Rules Engine 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Rules Engine 2.0 是一个可视化自动化构建器。规则不再是“一个过滤器加一份扁平的动作列表”，而是一个&lt;strong&gt;图（graph）&lt;/strong&gt;：一个决定规则何时被唤醒的触发器节点，以及任意数量相互连接的逻辑、发现项和出站（egress）节点，用来说明接下来会发生什么。&lt;/p&gt;
&lt;p&gt;Rules Engine 2.0 只能通过 &lt;a href="https://docs.defectdojo.com/get_started/about/ui_pro_vs_os/"&gt;Pro UI&lt;/a&gt; 访问。&lt;/p&gt;</description></item><item><title>构建规则</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/building_rules/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/building_rules/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：Rules Engine 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;规则是在画布上构建的。您从调色板中拖出节点，将它们连接起来，并在侧边面板中配置每一个节点。本页介绍的是这一过程中不论使用哪些节点都相同的部分。节点本身的说明请见&lt;a href="../node_reference/"&gt;节点参考&lt;/a&gt;。&lt;/p&gt;
&lt;h2 id="编辑器"&gt;编辑器&lt;/h2&gt;
&lt;p&gt;打开 &lt;strong&gt;Rules Engine 2.0 &amp;gt; All Rules&lt;/strong&gt;，选择 &lt;strong&gt;New Rule&lt;/strong&gt;，或打开一条已有规则进行编辑。&lt;/p&gt;</description></item><item><title>节点参考</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/node_reference/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/node_reference/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：Rules Engine 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Rules Engine 2.0 内置了分为四大类的 25 个节点。本页对它们逐一进行说明。&lt;/p&gt;
&lt;p&gt;除非另有说明，每个节点都接受一个输入，产生一个名为 &lt;code&gt;out&lt;/code&gt; 的输出，并将其收到的每一项都传递给该输出。这一点在你串联多个节点时很重要：一个发现项节点会先修改该发现项，然后再将其向后传递，因此依次排列的多个此类节点都会依次生效。&lt;/p&gt;
&lt;h2 id="触发器"&gt;触发器&lt;/h2&gt;
&lt;p&gt;每张图中都有且仅有一个触发器，也只有触发器才能启动一次运行。三种触发器都会产生发现项，并且都带有一个&lt;strong&gt;范围&lt;/strong&gt;设置，用来限定它们产生哪些发现项。范围的具体工作方式参见&lt;a href="../building_rules/"&gt;构建规则&lt;/a&gt;。&lt;/p&gt;</description></item><item><title>运行</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/runs/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/runs/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：规则引擎 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;运行&lt;/strong&gt;是一条规则的一次执行。无论成功还是失败，每次运行都会被记录，其中的每个节点也都会留下痕迹。&lt;strong&gt;规则引擎 2.0 &amp;gt; 运行&lt;/strong&gt;页面会列出这些记录。&lt;/p&gt;
&lt;h2 id="一次运行会记录哪些内容"&gt;一次运行会记录哪些内容&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Field&lt;/th&gt;
 &lt;th&gt;Meaning&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;规则&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;执行该操作的规则。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;触发方式&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;触发此次运行的事件，例如 &lt;code&gt;finding.created&lt;/code&gt;、&lt;code&gt;schedule&lt;/code&gt; 或 &lt;code&gt;manual&lt;/code&gt;。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;触发人&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;在有人手动触发时，指按下&amp;quot;运行&amp;quot;的人，或保存了引发此次运行的发现项的人。对于按计划触发，以及诸如导入或没有用户的 API 调用等无人在场的变更，此字段为空。这与规则的所有者不同，所有者指的是此次运行&lt;strong&gt;以谁的身份&lt;/strong&gt;执行。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;状态&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;Running&lt;/code&gt;、&lt;code&gt;Success&lt;/code&gt; 或 &lt;code&gt;Error&lt;/code&gt;。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;开始时间&lt;/strong&gt;与&lt;strong&gt;结束时间&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;运行发生的时间。只有在仍在运行时，结束时间才为空。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;错误&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;若运行失败，导致其结束的错误。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;统计信息&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;按节点统计的总数、级联事件以及延迟处理的工作。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;深度&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;此次运行距离触发它的原始事件经过了多少次级联跳转。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;源运行&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;对于级联触发的运行，指其所发出的事件触发了此次运行的那次运行。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="节点执行记录"&gt;节点执行记录&lt;/h3&gt;
&lt;p&gt;在一次运行中，每个节点都会记录自己的一行数据：&lt;/p&gt;</description></item><item><title>投递记录</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/deliveries/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/deliveries/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：Rules Engine 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;规则产生的每一个对外副作用，都会在投递台账中生成一行记录。&lt;strong&gt;Rules Engine 2.0 &amp;gt; Deliveries&lt;/strong&gt; 页面会列出这些记录。&lt;/p&gt;
&lt;p&gt;该记录会在发生任何网络调用之&lt;strong&gt;前&lt;/strong&gt;写入，其中保存的正是即将发送或已经发送的确切内容。正因如此，出站发送才是可审计的，而不是一条只能寄希望于有人保留下来的日志；这也是&lt;strong&gt;模拟&lt;/strong&gt;并非另一条独立代码路径的原因：模拟发送使用的是同一条记录，只是跳过了实际派发步骤。&lt;/p&gt;
&lt;h2 id="一条投递记录包含哪些内容"&gt;一条投递记录包含哪些内容&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;字段&lt;/th&gt;
 &lt;th&gt;含义&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;运行&lt;/strong&gt; 和 &lt;strong&gt;节点&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;产生该记录的运行以及出站节点。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;发现项&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;对于按发现项逐条发送的记录，指其对应的发现项；批量发送记录的则是该批次分组。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;渠道&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;该发送的类型。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;目标&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;解析后的目的地：JIRA 项目键、频道、URL 或地址。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;标题&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;对该次发送的一行简要描述。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;负载&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;即将发送或已发送的确切内容。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;模式&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;simulate&lt;/code&gt; 或 &lt;code&gt;live&lt;/code&gt;。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;状态&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;该投递记录当前所处的阶段。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;尝试次数&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;已尝试发送的次数，以及允许的最大次数。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;最后错误&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;上一次尝试失败的原因，或该记录被跳过的原因。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;响应&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;目标返回的内容。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;外部引用&lt;/strong&gt; 和 &lt;strong&gt;URL&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;目标返回的工单编号、消息 ID 或文件路径，以及指向它的链接（如果有）。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="渠道"&gt;渠道&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;渠道&lt;/th&gt;
 &lt;th&gt;产生方式&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;JIRA&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;创建 JIRA 问题&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;下游连接器&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;创建下游工单&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Slack&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;发送 Slack 消息，以及发送到 Slack 的报告通知&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Microsoft Teams&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;发送 Microsoft Teams 消息&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Email&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;发送电子邮件，以及通过电子邮件发送的报告通知&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;Webhook&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;调用 Webhook&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;报告&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;生成报告&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;应用内提醒&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;触发应用内提醒&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="状态"&gt;状态&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;状态&lt;/th&gt;
 &lt;th&gt;含义&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;simulated&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;该规则处于模拟模式。没有发送任何内容，以后也不会发送。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;skipped&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;已有其他记录覆盖了此次发送，或该发送被门控逻辑拒绝。原因记录在“最后错误”字段中。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;pending&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;已在正式模式下记录，正在等待其投递任务执行。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;dispatched&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;已交给集成服务，正在等待确认。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;sent&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;已确认送达。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;failed&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;被永久性拒绝，例如收到 4xx 或供应商返回的错误。可以重放。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;dead&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;重试次数已耗尽，或始终未收到确认。可以重放。&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;code&gt;skipped&lt;/code&gt; 值得多说一句。跳过操作会被记录下来，而不是悄无声息地发生，因为“规则什么都没做”和“规则什么都没做，是因为该发现项已经有工单了”是两种不同的情况，其中只有一种才是问题。&lt;/p&gt;</description></item><item><title>从 Rules Engine 转换</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/converting_from_rules_engine/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/converting_from_rules_engine/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：Rules Engine 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;两套引擎并行运行。启用 Rules Engine 2.0 不会改变您现有的 &lt;a href="https://docs.defectdojo.com/automation/rules_engine/about/"&gt;Rules Engine&lt;/a&gt; 规则中的任何内容，也没有必须迁移它们的截止时间。&lt;/p&gt;
&lt;p&gt;当您确实想要迁移时，有一个转换器可以使用。它会将一条 Rules Engine 规则（一个过滤器加一份有序的动作列表）转换为一张等价的 Rules Engine 2.0 图。&lt;/p&gt;</description></item><item><title>配置</title><link>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/configuration/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.defectdojo.com/zh-hans/automation/rules_engine_2/configuration/</guid><description>&lt;p&gt;&lt;span style="background-color:rgba(242, 86, 29, 0.3)"&gt;注意：Rules Engine 2.0 是 DefectDojo Pro 专属功能。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Rules Engine 2.0 开箱即用。本页的设置面向那些需要调整吞吐量、保留期或出站网络策略的部署环境。所有这些设置的应用方式都与其他任何 DefectDojo 设置相同（参见&lt;a href="https://docs.defectdojo.com/get_started/open_source/configuration/"&gt;配置&lt;/a&gt;）。&lt;/p&gt;
&lt;p&gt;Rules Engine 2.0 与原有的 Rules Engine 分开配置。两套引擎不共享任何调优参数，因此 &lt;code&gt;DD_RULES_ENGINE_*&lt;/code&gt; 设置不会影响 Rules Engine 2.0，&lt;code&gt;DD_RULES_V2_*&lt;/code&gt; 设置也不会影响原有引擎。&lt;/p&gt;</description></item></channel></rss>