工作流触发机制与执行日志
除了手动执行外,TestNet 支持 Cron 定时调度、资产事件联动触发 和 运行日志追踪。
一、 定时调度触发 (Cron Scheduling)
针对需要定期开展安全巡检、资产发现或漏洞探测的常态化工作流,您可以配置标准 Linux Cron 表达式实现无人工干预周期性扫描:
1. 配置定时规则
在工作流列表中点击目标工作流右侧的 「定时设置」 或在 DSL 头部声明:
yaml
kind: Workflow
metadata:
id: daily-domain-enum
name: 每日域名自动巡检
spec:
trigger:
type: CRON
enabled: true
cron: "0 0 2 * * ?" # 每天凌晨 2 点自动执行
input:
assetTypes: [DOMAIN]- 支持全量 Cron 语法:秒 分 时 日 月 周 年;
- 并发控制策略:当上一周期执行还未结束而下一定时周期已到达时,系统默认跳过本周期,防止任务堆积。
二、 资产事件联动触发 (Event-Driven Auto-Trigger)
TestNet 支持基于资产事件的自动触发。当平台发现新的高价值资产变化时,可立即自动联动执行检测工作流:
1. 常见自动化联动场景
- 新增子域名入库 (
NEW_ASSET):一旦被动或主动收集发现了属于某个主域名的全新子域名或指向 IP,立刻自动触发「Web 端口与指纹探测工作流」; - 发现全新 Web 服务开放:自动对新暴露的管理后台发起敏感路径与弱口令探测;
- 新增未修漏洞告警 (
NEW_VUL):联动发送企业微信/钉钉紧急告警并抓取关键证据保存。
2. 联动过滤器规则
用户可在工作流 DSL 中将 trigger.type 设为 AUTO,并配合 trigger.input 配置资产类型与过滤条件,确保只对高优先级目标发起高耗时扫描:
yaml
spec:
trigger:
type: AUTO
enabled: true
input:
assetTypes: [SUBDOMAIN]
filter:
tagsInclude: ["生产环境"] # 仅限带生产标签的新子域名才触发三、 运行历史记录与执行轨迹 (Workflow Runs)
通过 「工作流管理」->「执行运行记录」,您可以全面俯瞰系统内所有定时、手动或联动下发的工作流生命周期:
1. 运行状态分类与查询
- 运行状态指示:清晰标识
RUNNING(执行中)、COMPLETED(成功完成)、PARTIAL(部分成功)、FAILED(失败异常) 与CANCELLED(人工中止); - 触发源溯源 (Trigger Mode):明确标注每次运行是来自于
MANUAL(用户触发)、CRON(定时调度触发)、ASSET(由资产变更事件联动触发) 还是AI(由 AI Agent 调用 MCP 触发)。
2. 节点任务分解追踪
点击任意一条工作流运行记录,可以展开查看其 DAG 分解下发的子任务树:
- 步骤耗时统计:精准看清每个阶段(如
subdomain-enum耗时 45 秒,vuln-scan耗时 12 分钟)的时间瓶颈; - 一键直达实时日志:对于正在执行中的任务,点击即可查看实时彩色终端日志,实时掌握节点探测输出;
- 失败重试与人工干预:对于因外部网络中断致使单节点挂掉的任务,支持单步骤重试或跳过该节点继续下发执行。