Skip to content

连接器 ​

连接器集中管理 HTTP 外呼与邮件、短信等集成配置,并统一提供限流、熔断和调用审计。触发器、外部审批、事件订阅和补偿动作可以引用相应类型的连接器。

页面入口为 工作流引擎 → 运维与集成 → 连接器。

能力 ​

能力说明
类型可创建并执行 http、webhook、email、sms、wecom、dingtalk、feishu;mq、database 没有可调用运行时,不提供创建入口
凭据Token、用户名密码、API Key 等凭据加密落库,列表不回传明文
超时 / 重试HTTP 调用使用 timeoutMs;无工作流作业上下文时可使用 retryMax,作业内 HTTP 关闭传输层重试并交给作业账本处理。邮件、短信复用系统通道发送配置
熔断连续失败达到阈值后进入冷却期
限流按窗口秒数和最大次数控制调用频率
测试调用页面可发起一次探测请求并查看响应
调用监控查看近 N 天统计和最近调用记录

配置页面按类型显示字段:HTTP / Webhook / IM 使用基础地址和 HTTP 鉴权;邮件配置收件人和主题,正文由调用流程提供;短信配置手机号和当前租户可用的启用模板,发送时按模板选择对应服务商。邮件、短信无需 HTTP 基础地址。编辑会保留类型专用字段,切换类型后只保存新类型的配置。

保存和更新均校验所选类型的配置。HTTP 基础地址不能为空且必须通过出站检查;邮件地址需有效;短信模板必须存在、启用并属于当前租户可用范围。测试调用支持消息正文或 JSON 数据,邮件、短信测试会真实发送到已配置的目标。

限流、熔断与执行作业 ​

限流使用 Redis 滑动窗口,熔断状态也在 Redis 中共享。连续失败达到阈值后打开熔断,冷却后进入半开并允许一次探测;调用成功后恢复关闭。Redis 不可用时两项控制采用 fail-open,调用仍可继续并记录日志。

工作流作业内 HTTP 携带稳定的 X-Idempotency-Key,单次尝试只发起一次传输请求。外部写入结果不明时进入待确认死信,不能通过连接器重试配置绕过此边界;详见作业执行与恢复。

引用方 ​

引用方说明
触发器节点HTTP 外呼与回调派发经连接器执行(见触发器与外部审批)
外部审批审批任务派发到第三方系统
事件订阅Webhook 投递目标(见事件总线与事件订阅)
补偿动作connector 类型的反向 / 兜底动作(见补偿 / Saga)

节点或订阅选择连接器后,配置中的 URL 可退化为相对路径,由连接器提供基础地址和鉴权。

事件订阅仅可引用 HTTP / Webhook 连接器,以保留原事件 JSON 和签名内容。保存时校验当前租户可见连接器、完整地址的同源约束及拼装后的出站目标;引用连接器不豁免 SSRF 检查。清除连接器前需将相对 URL 改为完整 HTTP/HTTPS 地址。

出站安全 ​

工作流域的全部 HTTP 外呼(远程数据源、连接器、事件订阅、自动化 Webhook、触发器 / 外部审批、补偿动作、节点监听器)统一经 lib/workflow-outbound 发出,始终启用 SSRF 防护:

  • 保存配置时校验目标地址:仅 http(s)、不得携带用户名密码、解析结果不得落在本机 / 私网 / 链路本地 / 云元数据等保留网段;
  • 请求时使用 DNS 固定的分发器逐地址复核并禁止跟随重定向,保存后改 DNS 记录指向内网同样会被拦下;
  • 引用连接器时的调用路径只能是相对路径或与连接器基地址同源的地址,防止把连接器上解密出的凭据带到其他主机;
  • URL 模板中的占位值(含流程发起人填写的表单字段)按百分号编码写入,只能成为路径 / 参数中的一个值,无法改写路径层级、追加参数或伪造主机。

确需访问内网服务时由运维在 WORKFLOW_OUTBOUND_ALLOWED_HOSTS 精确放行。

调用记录 ​

每次经连接器的调用都会落审计记录,标记调用来源:test(测试调用)、trigger(触发器)、external(外部审批)、webhook(事件订阅投递)、manual(手工)。调用统计与明细在连接器列表的监控入口查看。

API 摘要 ​

方法路径说明
GET/api/workflows/connectors连接器列表
GET/api/workflows/connectors/{id}连接器详情
POST/api/workflows/connectors创建连接器
PUT/api/workflows/connectors/{id}更新连接器
DELETE/api/workflows/connectors/{id}删除连接器
POST/api/workflows/connectors/{id}/test测试调用
GET/api/workflows/connectors/{id}/stats调用统计
GET/api/workflows/connectors/{id}/invocations最近调用记录

Built with VitePress for local documentation preview.