创建关键操作通知
功能介绍
配置关键操作通知,可在发生特定操作时,使用预先创建好的SMN主题,向用户手机、邮箱发送消息,也可直接发送http/https消息。常用于实时感知高危操作、触发特定操作或对接用户自有审计分析系统。
调用方法
请参见如何调用API。
URI
POST /v3/{project_id}/notifications
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        project_id  | 
      
        是  | 
      
        String  | 
      
        项目ID,参见获取账号ID和项目ID章节。  | 
     
请求参数
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        notification_name  | 
      
        是  | 
      
        String  | 
      
        标识关键操作名称。  | 
     
| 
        operation_type  | 
      
        是  | 
      
        String  | 
      
        标识操作类型。 目前支持的操作类型有完整类型(complete)和自定义类型(customized)。 完整类型下,CTS发送通知的对象为已对接服务的所有事件,此时不用指定operations和notify_user_list字段。 自定义类型下,CTS发送通知的对象是在operations列表中指定的事件。 枚举值: 
  | 
     
| 
        operations  | 
      
        否  | 
      
        Array of Operations objects  | 
      
        操作事件列表。  | 
     
| 
        notify_user_list  | 
      
        否  | 
      
        Array of NotificationUsers objects  | 
      
        通知用户列表,目前最多支持对10个用户组和50个用户发起的操作进行配置。  | 
     
| 
        topic_id  | 
      
        否  | 
      
        String  | 
      
        消息通知服务的topic_urn或者函数工作流的func_urn。- 消息通知服务的topic_urn可以通过消息通知服务的查询主题列表API获取,示例:urn:smn:regionId:f96188c7ccaf4ffba0c9aa149ab2bd57:test_topic_v2。- 函数工作流的func_urn可以通过函数工作流的获取函数列表API获取,示例:urn:fss:xxxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test。  | 
     
| 
        filter  | 
      
        否  | 
      
        Filter object  | 
      
        关键操作通知高级过滤条件。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        service_type  | 
      
        是  | 
      
        String  | 
      
        标识云服务类型。必须为已对接CTS的云服务的英文缩写,且服务类型一般为大写字母。 已对接的云服务列表参见《云审计服务用户指南》“支持审计的服务及详细操作列表”章节,单击对应云服务的文档链接,可以查看到该云服务的英文缩写。  | 
     
| 
        resource_type  | 
      
        是  | 
      
        String  | 
      
        标识资源类型。  | 
     
| 
        trace_names  | 
      
        是  | 
      
        Array of strings  | 
      
        标识事件名称。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        user_group  | 
      
        是  | 
      
        String  | 
      
        IAM用户组。  | 
     
| 
        user_list  | 
      
        是  | 
      
        Array of strings  | 
      
        IAM用户。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        condition  | 
      
        是  | 
      
        String  | 
      
        多条件关系。 
 枚举值: 
  | 
     
| 
        is_support_filter  | 
      
        是  | 
      
        Boolean  | 
      
        是否打开高级筛选开关。  | 
     
| 
        rule  | 
      
        是  | 
      
        Array of strings  | 
      
        高级过滤条件规则,示例如下:"key != value",格式为:字段 规则 值。-字段取值范围:api_version,code,trace_rating,trace_type,resource_id,resource_name。-规则:!= 或 =。- 值:api_version正则约束:^(a-zA-Z0-9_-.){1,64}$;code:最小长度1,最大长度256;trace_rating枚举值:"normal", "warning", "incident";trace_type枚举值:"ConsoleAction", "ApiCall", "SystemAction";resource_id:最小长度1,最大长度350;resource_name:最小长度1,最大长度256  | 
     
响应参数
状态码: 201
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        notification_name  | 
      
        String  | 
      
        通知名称。  | 
     
| 
        operation_type  | 
      
        String  | 
      
        操作类型。和自定义。 
 枚举值: 
  | 
     
| 
        operations  | 
      
        Array of Operations objects  | 
      
        操作事件列表。  | 
     
| 
        notify_user_list  | 
      
        Array of NotificationUsers objects  | 
      
        通知用户列表,目前最多支持对10个用户组和50个用户发起的操作进行配置。  | 
     
| 
        status  | 
      
        String  | 
      
        通知状态。启用和停用。 
 枚举值: 
  | 
     
| 
        topic_id  | 
      
        String  | 
      
        消息通知服务(SMN)主题的唯一的资源标识,可通过查询主题列表获取该标识。  | 
     
| 
        notification_id  | 
      
        String  | 
      
        通知的唯一标识ID。  | 
     
| 
        notification_type  | 
      
        String  | 
      
        通知类型。 -smn:消息通知服务。 -fun:函数工作流。 枚举值: 
  | 
     
| 
        project_id  | 
      
        String  | 
      
        项目ID。  | 
     
| 
        create_time  | 
      
        Long  | 
      
        通知规则创建时间。  | 
     
| 
        filter  | 
      
        Filter object  | 
      
        关键操作通知高级筛选条件。  | 
     
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        service_type  | 
      
        String  | 
      
        标识云服务类型。必须为已对接CTS的云服务的英文缩写,且服务类型一般为大写字母。 已对接的云服务列表参见《云审计服务用户指南》“支持审计的服务及详细操作列表”章节,单击对应云服务的文档链接,可以查看到该云服务的英文缩写。  | 
     
| 
        resource_type  | 
      
        String  | 
      
        标识资源类型。  | 
     
| 
        trace_names  | 
      
        Array of strings  | 
      
        标识事件名称。  | 
     
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        condition  | 
      
        String  | 
      
        多条件关系。 
 枚举值: 
  | 
     
| 
        is_support_filter  | 
      
        Boolean  | 
      
        是否打开高级筛选开关。  | 
     
| 
        rule  | 
      
        Array of strings  | 
      
        高级过滤条件规则,示例如下:"key != value",格式为:字段 规则 值。-字段取值范围:api_version,code,trace_rating,trace_type,resource_id,resource_name。-规则:!= 或 =。- 值:api_version正则约束:^(a-zA-Z0-9_-.){1,64}$;code:最小长度1,最大长度256;trace_rating枚举值:"normal", "warning", "incident";trace_type枚举值:"ConsoleAction", "ApiCall", "SystemAction";resource_id:最小长度1,最大长度350;resource_name:最小长度1,最大长度256  | 
     
状态码: 400
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码标识,CTS.XXX。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述。  | 
     
状态码: 401
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码标识,CTS.XXX。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述。  | 
     
状态码: 403
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码标识,CTS.XXX。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述。  | 
     
状态码: 404
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码标识,CTS.XXX。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述。  | 
     
状态码: 500
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码标识,CTS.XXX。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述。  | 
     
状态码: 503
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        错误码标识,CTS.XXX。  | 
     
| 
        error_msg  | 
      
        String  | 
      
        错误描述。  | 
     
请求示例
- 创建完整类型关键操作通知请求样例。
    
POST https://{endpoint}/v3/{project_id}/notifications { "notification_name" : "test", "filter" : { "is_support_filter" : true, "rule" : [ "code != 200", "api_version = v1.0", "trace_rating = normal", "trace_type != ApiCall", "resource_id = xxx", "resource_name = xxx" ], "condition" : "OR" }, "operation_type" : "complete", "topic_id" : "urn:smn:{regionid}:24edf66e79d04187acb99a463e610764:test" } - 创建自定义类型关键操作通知请求样例。
    
POST https://{endpoint}/v3/{project_id}/notifications { "notification_name" : "test", "operation_type" : "customized", "filter" : { "is_support_filter" : true, "rule" : [ "code != 200", "api_version = v1.0", "trace_rating = normal", "trace_type != ApiCall", "resource_id = xxx", "resource_name = xxx" ], "condition" : "OR" }, "operations" : [ { "service_type" : "CTS", "resource_type" : "tracker", "trace_names" : [ "createTracker", "deleteTracker" ] }, { "service_type" : "CTS", "resource_type" : "notification", "trace_names" : [ "deleteNotification", "updateNotification" ] }, { "service_type" : "AOM", "resource_type" : "pe", "trace_names" : [ "deletePolicyGroup", "updatePolicyGroup", "createPolicyGroup" ] } ], "notify_user_list" : [ { "user_group" : "admin", "user_list" : [ "test1", "test2" ] }, { "user_group" : "CTS view", "user_list" : [ "test3", "test4" ] } ], "topic_id" : "urn:smn:{regionid}:24edf66e79d04187acb99a463e610764:test" } 
响应示例
状态码: 201
创建成功。
{
  "create_time" : 1634001495876,
  "notification_id" : "cda8fd83-d08c-46f0-b914-1453a6a85c00",
  "notification_name" : "test",
  "notification_type" : "smn",
  "notify_user_list" : [ {
    "user_group" : "admin",
    "user_list" : [ "test1", "test2" ]
  }, {
    "user_group" : "CTS view",
    "user_list" : [ "test3", "test4" ]
  } ],
  "operation_type" : "customized",
  "operations" : [ {
    "resource_type" : "tracker",
    "service_type" : "CTS",
    "trace_names" : [ "createTracker", "deleteTracker" ]
  }, {
    "resource_type" : "notification",
    "service_type" : "CTS",
    "trace_names" : [ "deleteNotification", "updateNotification" ]
  }, {
    "resource_type" : "pe",
    "service_type" : "AOM",
    "trace_names" : [ "deletePolicyGroup", "updatePolicyGroup", "createPolicyGroup" ]
  } ],
  "project_id" : "24edf66e79d04187acb99a463e610764",
  "status" : "enabled",
  "topic_id" : "urn:smn:{regionid}:24edf66e79d04187acb99a463e610764:test"
}
 状态码
| 
        状态码  | 
      
        描述  | 
     
|---|---|
| 
        201  | 
      
        创建成功。  | 
     
| 
        400  | 
      
        服务器未能处理请求。  | 
     
| 
        401  | 
      
        请求鉴权校验失败,访问被拒绝。  | 
     
| 
        403  | 
      
        请求权限校验失败,访问被禁止。  | 
     
| 
        404  | 
      
        服务器无法找到被请求的资源或部分关键操作通知删除失败。  | 
     
| 
        500  | 
      
        服务内部异常,请求未完成;或部分追踪器删除失败。  | 
     
| 
        503  | 
      
        被请求的服务无效。建议直接修改该请求,不要重试该请求。  | 
     
错误码
请参见错误码。