NotifyMessage组件

NotifyMessage组件主要提供处理事件消息通知信息功能。

功能描述

动作

描述

使用场景

notifyByMessageCenter

消息中心事件通知,消息类型为“安全消息-云盾安全信息通知”。

对安全事件生成、安全告警生成、安全事件更新三种场景进行通知,通知方式采用阿里云消息中心设置的通知方式。

notifyByCustom

自定义事件通知。

自定义消息发送,支持邮箱、钉钉群。

组件配置示例

本文提供了NotifyMessage组件各动作的参数配置示例,您可将其作为测试剧本导入。通过可视化流程编辑器,能更直观地了解和测试各动作的配置参数,轻松掌握组件的功能逻辑与使用方式。操作步骤可参考剧本导入

说明

请先将示例数据保存为JSON文件。

示例数据

{
    "cells": [
        {
            "position": {
                "x": -660, 
                "y": -170
            }, 
            "size": {
                "width": 36, 
                "height": 36
            }, 
            "attrs": {
                "body": {
                    "fill": "white", 
                    "strokeOpacity": 0.95, 
                    "stroke": "black", 
                    "strokeWidth": 2
                }, 
                "label": {
                    "text": "start", 
                    "fontSize": 12, 
                    "refX": 0.5, 
                    "refY": "100%", 
                    "refY2": 4, 
                    "textAnchor": "middle", 
                    "textVerticalAnchor": "top"
                }
            }, 
            "visible": true, 
            "shape": "circle", 
            "id": "58d87b7d-28d9-4f0e-b135-4adc4f1a70e4", 
            "zIndex": 1, 
            "data": {
                "nodeType": "startEvent", 
                "appType": "basic", 
                "nodeName": "start", 
                "icon": "icon-circle", 
                "description": "剧本开始节点,一个剧本必须有且仅有一个开始节点,需为剧本配置输入数据。"
            }, 
            "markup": [
                {
                    "tagName": "circle", 
                    "selector": "body"
                }, 
                {
                    "tagName": "text", 
                    "selector": "label"
                }
            ], 
            "isNode": true
        }, 
        {
            "shape": "custom-edge", 
            "zIndex": 1, 
            "id": "5293c3f9-e1c9-4a49-b0eb-635067dc67e8", 
            "data": {
                "nodeType": "sequenceFlow", 
                "appType": "basic", 
                "isRequired": true, 
                "icon": "icon-upper-right-arrow"
            }, 
            "isNode": false, 
            "source": {
                "cell": "58d87b7d-28d9-4f0e-b135-4adc4f1a70e4"
            }, 
            "target": {
                "cell": "88d3ff93-4f11-4d82-b43b-31dfd0530774"
            }, 
            "visible": true, 
            "router": {
                "name": "manhattan", 
                "args": {
                    "padding": 5, 
                    "excludeHiddenNodes": true, 
                    "excludeNodes": [
                        "clone_node_id"
                    ]
                }
            }, 
            "vertices": [ ]
        }, 
        {
            "position": {
                "x": -70, 
                "y": -170
            }, 
            "size": {
                "width": 36, 
                "height": 36
            }, 
            "attrs": {
                "body": {
                    "fill": "white", 
                    "strokeOpacity": 0.95, 
                    "stroke": "black", 
                    "strokeWidth": 2
                }, 
                "path": {
                    "r": 12, 
                    "refX": "50%", 
                    "refY": "50%", 
                    "fill": "black", 
                    "strokeOpacity": 0.95, 
                    "stroke": "black", 
                    "strokeWidth": 4
                }, 
                "label": {
                    "text": "end", 
                    "fontSize": 12, 
                    "refX": 0.5, 
                    "refY": "100%", 
                    "refY2": 4, 
                    "textAnchor": "middle", 
                    "textVerticalAnchor": "top"
                }
            }, 
            "visible": true, 
            "shape": "circle", 
            "id": "317dd1be-2d20-460e-977e-1fc936ffb583", 
            "zIndex": 1, 
            "data": {
                "nodeType": "endEvent", 
                "appType": "basic", 
                "nodeName": "end", 
                "icon": "icon-radio-off-full", 
                "description": "end"
            }, 
            "markup": [
                {
                    "tagName": "circle", 
                    "selector": "body"
                }, 
                {
                    "tagName": "circle", 
                    "selector": "path"
                }, 
                {
                    "tagName": "text", 
                    "selector": "label"
                }
            ], 
            "isNode": true
        }, 
        {
            "position": {
                "x": -551, 
                "y": -185
            }, 
            "size": {
                "width": 137, 
                "height": 66
            }, 
            "view": "react-shape-view", 
            "attrs": {
                "label": {
                    "text": "NotifyMessage_1"
                }
            }, 
            "shape": "activity", 
            "id": "88d3ff93-4f11-4d82-b43b-31dfd0530774", 
            "data": {
                "componentName": "NotifyMessage", 
                "appType": "component", 
                "nodeType": "action", 
                "icon": "https://img.alicdn.com/tfs/TB1mO0AeAL0gK0jSZFAXXcA9pXa-200-200.svg", 
                "ownType": "sys", 
                "zIndex": 1, 
                "tenantId": "baba", 
                "customInput": false, 
                "description": "阿里云消息中心的通知功能", 
                "id": 0, 
                "name": "notifyByMessageCenter", 
                "operateType": "general", 
                "output": [
                    {
                        "dataType": "String", 
                        "name": "message", 
                        "tags": ""
                    }, 
                    {
                        "dataType": "Boolean", 
                        "name": "status", 
                        "tags": ""
                    }
                ], 
                "parameters": [
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "enDescription": "", 
                        "name": "aliuid", 
                        "needCascader": false, 
                        "required": true, 
                        "tags": ""
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "如果不选,会发送所有通道", 
                        "enDescription": "", 
                        "formConfig": "{\"component\":\"Select\",\"options\":{\"selectMode\":\"pureSelect\",\"remote\":false,\"optionList\":[{\"label\":\"短信\",\"value\":\"sms\"},{\"label\":\"邮箱\",\"value\":\"email\"},{\"label\":\"webhook\",\"value\":\"webhook\"},{\"label\":\"站内信\",\"value\":\"pmsg\"}],\"mode\":\"multiple\",\"labelKey\":\"label\",\"valueKey\":\"value\"}}", 
                        "name": "channelTypeList", 
                        "needCascader": false, 
                        "required": false, 
                        "tags": ""
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "消息事件id", 
                        "enDescription": "", 
                        "name": "eventId", 
                        "needCascader": false, 
                        "required": true, 
                        "tags": ""
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "参数变量", 
                        "enDescription": "", 
                        "name": "params", 
                        "needCascader": false, 
                        "required": false, 
                        "tags": ""
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "控制台语言", 
                        "enDescription": "", 
                        "name": "lang", 
                        "needCascader": false, 
                        "required": false, 
                        "tags": ""
                    }
                ], 
                "riskLevel": 2, 
                "nodeName": "NotifyMessage_1", 
                "actionName": "notifyByMessageCenter", 
                "actionDisplayName": "notifyByMessageCenter", 
                "cascaderValue": [ ], 
                "valueData": {
                    "lang": "zh", 
                    "channelTypeList": [ ], 
                    "eventId": "yundun_soar_incident_generate", 
                    "aliuid": "1766xxxx", 
                    "params": "{\"incidentName\":\"事件生成测试\",\"incidentID\":\"xxx\",\"startTime\":\"2025-02-03 00:00:00\"}"
                }
            }, 
            "zIndex": 1
        }, 
        {
            "shape": "custom-edge", 
            "zIndex": 1, 
            "id": "6444c559-f58d-4d0c-8fdc-6988af2f766d", 
            "data": {
                "nodeType": "sequenceFlow", 
                "appType": "basic", 
                "isRequired": true, 
                "icon": "icon-upper-right-arrow"
            }, 
            "isNode": false, 
            "visible": true, 
            "router": {
                "name": "manhattan", 
                "args": {
                    "padding": 5, 
                    "excludeHiddenNodes": true, 
                    "excludeNodes": [
                        "clone_node_id"
                    ]
                }
            }, 
            "source": {
                "cell": "88d3ff93-4f11-4d82-b43b-31dfd0530774"
            }, 
            "target": {
                "cell": "6e34b2ec-3ac4-4f4c-8d0a-3cbebb00bd64"
            }, 
            "vertices": [ ]
        }, 
        {
            "position": {
                "x": -329, 
                "y": -185
            }, 
            "size": {
                "width": 137, 
                "height": 66
            }, 
            "view": "react-shape-view", 
            "attrs": {
                "label": {
                    "text": "NotifyMessage_2"
                }
            }, 
            "shape": "activity", 
            "id": "6e34b2ec-3ac4-4f4c-8d0a-3cbebb00bd64", 
            "data": {
                "componentName": "NotifyMessage", 
                "appType": "component", 
                "nodeType": "action", 
                "icon": "https://img.alicdn.com/tfs/TB1mO0AeAL0gK0jSZFAXXcA9pXa-200-200.svg", 
                "ownType": "sys", 
                "zIndex": 1, 
                "tenantId": "baba", 
                "customInput": true, 
                "description": "钉钉、邮件通知功能", 
                "id": 0, 
                "name": "notifyByCustom", 
                "operateType": "general", 
                "output": [
                    {
                        "dataType": "String", 
                        "name": "message"
                    }, 
                    {
                        "dataType": "Boolean", 
                        "name": "status"
                    }
                ], 
                "parameters": [
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "emailTitle", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "receivers", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "telephone", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "telephonecontext", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "dingding", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "dingdingcontext", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "sms", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "smscontext", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "email", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "emailcontext", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "customReceiver", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "jsonInput", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "dingdingWebhooks", 
                        "needCascader": false, 
                        "required": false
                    }, 
                    {
                        "dataType": "String", 
                        "defaultValue": "", 
                        "description": "", 
                        "name": "dingdingMsgType", 
                        "needCascader": false, 
                        "required": false
                    }
                ], 
                "riskLevel": 2, 
                "nodeName": "NotifyMessage_2", 
                "actionName": "notifyByCustom", 
                "actionDisplayName": "notifyByCustom", 
                "cascaderValue": [
                    {
                        "label": "NotifyMessage_1", 
                        "value": "${NotifyMessage_1}", 
                        "children": [ ]
                    }
                ], 
                "assetUuid": "acde2ae8-8b01-4bec-97c4-44ba6c9ba457", 
                "valueData": {
                    "email": 1, 
                    "receivers": "[{\"userid\":-1,\"email\":\"xxx@163.com\"}]", 
                    "emailTitle": "自定义通知测试", 
                    "emailcontext": "自定义通知测试"
                }
            }, 
            "zIndex": 1
        }, 
        {
            "shape": "custom-edge", 
            "zIndex": 1, 
            "id": "5f2bddfd-ae71-423e-ac59-e4dde4a45238", 
            "data": {
                "nodeType": "sequenceFlow", 
                "appType": "basic", 
                "isRequired": true, 
                "icon": "icon-upper-right-arrow"
            }, 
            "isNode": false, 
            "visible": true, 
            "router": {
                "name": "manhattan", 
                "args": {
                    "padding": 5, 
                    "excludeHiddenNodes": true, 
                    "excludeNodes": [
                        "clone_node_id"
                    ]
                }
            }, 
            "source": {
                "cell": "6e34b2ec-3ac4-4f4c-8d0a-3cbebb00bd64"
            }, 
            "target": {
                "cell": "317dd1be-2d20-460e-977e-1fc936ffb583"
            }, 
            "vertices": [ ]
        }
    ]
}

资源实例配置

使用NotifyMessage日志组件,需要先设置邮件的相关信息。操作步骤如下:

  1. 单击组件,在基础信息配置页签,资源实例配置区域点击资源实例配置

  2. 在资源实例配置页面,单击新增按钮。参照如下完成配置:

参数

描述

assetname

可根据自身业务自定义资源名称。

emailSendServer

邮件发件服务器,非必填项。

  • 若不填,系统将根据emailUsername参数中配置的邮箱后缀进行推断。

    例如:发件邮箱为1*@aliyun.com,则推断服务器为smtp.aliyun.com,端口使用465。

  • 若填写,填写格式为“host:port”,其中host必须配置,port可以不配置,默认使用465。

    说明

    因为阿里云服务器安全管控,不支持25端口,建议使用465端口。

emailUsername

发件邮箱地址。

重要
  • 目前仅支持QQ、网易、gmail、阿里邮箱。

  • 仅支持SMTP协议发送邮件。

emailPassword

发件人邮箱密码。

重要

如果开启了授权验证,则为授权码。授权码会有过期时间,务必在过期前更换为新授权码,否则将因为认证失败导致邮件发送失败。

notifyByMessageCenter

消息中心事件通知,消息类型为“安全消息-云盾安全信息通知”。

参数说明

参数

描述

通知方式

非必填,支持多选。

  • 若不设置,通知组件默认使用“消息中心-消息接收管理”设置的方式进行通知。

  • 若设置了,将基于组件设置与“消息中心-消息接收管理”的设置的通知方式取交集后进行通知。

例如:组件设置为站内信、邮件,消息中心设置为邮件、机器人。则实际的通知方式为邮件。

通知模板

目前支持事件生成、告警生成、事件更新三种模板。

说明

通知模板中会有变量参数需要配置,发送时会替换为实际值。

参数设置

根据通知模板中设置的变量,配置实际值。支持设置常量或者前置节点的输出参数,例如${event._tenant_id}。

notifyByCustom动作

自定义消息发送,支持邮箱、钉钉群

邮件相关参数

参数

描述

发件人

发件邮箱,需要在资源实例中配置。

收件人

收件邮箱。

主题

邮件的主题。

正文

邮件的正文。

钉钉相关参数

参数

描述

Webhook

要发送的Webhook 地址,可参见在消息中心中进行管理。

消息模板

消息的模板。