在 Flashduty On-call
您可通过以下两种方式获取集成推送地址,任选其一即可。
使用专属集成
- 进入 Flashduty 控制台,选择 协作空间,打开一个协作空间
- 选择 配置 → 集成数据 → 专属集成,点击 新增一个集成
- 选择 Lacework FortiCNAPP,点击 保存
- 打开生成的集成卡片,复制 推送地址
使用共享集成
- 进入 Flashduty 控制台,选择 集成中心 → 告警事件
- 选择 Lacework FortiCNAPP,填写集成名称
- 配置默认路由并选择协作空间;创建后可在 路由 中增加更多规则
- 点击 保存,复制生成的 推送地址
在 FortiCNAPP 中配置
1
创建 Webhook 告警通道
- 使用管理员账号登录 FortiCNAPP 控制台
- 进入 Settings > Notifications > Channels,点击 + Add new
- 选择 Webhook,点击 Next
- 填写通道名称,例如
Flashduty - 在 Webhook URL 中粘贴 Flashduty 集成的完整推送地址(必须是
https地址,integration_key保留在查询参数中) - 点击 Save
POST 的 JSON 请求,请求体字段固定,无需编写模板。2
创建告警规则
在 Settings > Notifications > Alert rules 中点击 + Add New,选择上一步创建的通道,再按需选择告警等级、资源组和告警类别。只有命中告警规则的告警才会推送到 Flashduty。
3
开启超时自动关闭
为接收 FortiCNAPP 告警的协作空间开启超时自动关闭,建议时长 24 小时,计时起点选择 故障触发,可按团队处置时效调整。
4
验证
在通道列表中对该通道执行 Test Integration(如可用),或等待告警规则命中,确认 Flashduty 收到对应告警。FortiCNAPP 文档没有给出测试请求的内容,Flashduty 把它当作普通告警处理;测试告警不关联任何真实告警,也没有恢复事件,请确认收到后手动关闭。
Alert Key
Flashduty 使用请求体中的
lacework_account 与 event_id 生成 Alert Key。FortiCNAPP 文档对 event_id 的说明是 “The FortiCNAPP ID for the event”。同一事件的重复推送(例如告警通道按资源分组时每个资源一条通知)会落在同一条 Flashduty 告警上,不同事件各自产生告警。
标题、等级、描述、时间等字段的变化不会改变 Alert Key。请求缺少 event_id 时,Flashduty 为该请求单独生成一条告警;请求中 event_id、event_title 与 event_description 都缺失时返回参数错误。
状态和告警等级
FortiCNAPP 的 Webhook 没有状态字段,Flashduty 每次收到的都是触发事件。
event_severity 取值 1 到 5,1 最高。
告警标题取
event_title,描述取 event_description。告警标签包含 Lacework 账号(lacework_account)、事件来源(event_source)、事件类型(event_type)、事件 ID、原始等级、合规建议 ID(rec_id,仅合规事件有)、事件时间和事件链接。
排查问题
- 没有收到告警:确认告警规则选择了该通道,且规则的等级、资源组和告警类别覆盖了该告警;被禁用的通道不会投递
- 保存通道失败:Webhook URL 必须是
https,并包含完整的integration_key查询参数 - 告警一直不关闭:FortiCNAPP 不推送关闭通知,请开启协作空间的超时自动关闭
- 收到测试告警:这是 Test Integration 产生的告警,按普通告警处理,手动关闭即可