DescribeSecurityEventTimeSeriesMetric - 查询攻击流量时序数据

更新时间:2025-04-03 06:55:16

查询攻击流量时序数据,攻击请求指的是命中规则并且被判定为有风险的请求。

接口说明

攻击流量指的是命中规则并且被判定为有风险的请求。如下三种数据不包含:

  • 命中“白名单规则”的请求。
  • 命中 bot 规则,但是规则动作为“回源标记”的请求。
  • 命中规则并且规则动作为“动态令牌”/“滑块”/“严格滑块”/“js 验证”,但是用户校验通过并放行的请求。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用前面加 * 表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
操作访问级别资源类型条件关键字关联操作
yundun-waf:DescribeSecurityEventTimeSeriesMetricget
*全部资源
*

请求参数

名称类型必填描述示例值
名称类型必填描述示例值
InstanceIdstring

要操作的 WAF 实例 ID。

说明
您可以调用 DescribeInstanceInfo 查询 WAF 实例的 ID。
waf-cn-tl32ast****
Filterobject

查询过滤条件,多个过滤条件之间是逻辑与的关系。

DateRangeobject

查询时间范围。

StartDatelong

查询数据时使用的开始时间,使用 UNIX 时间戳表示,单位:秒。

1713888000
EndDatelong

查询数据时使用的结束时间,使用 UNIX 时间戳表示,单位:秒。

1713888600
Conditionsarray<object>

过滤条件列表,每一个节点描述一个过滤条件。

object

单个查询条件配置,查询条件由字段名称操作符过滤内容组成。关于查询条件中支持的字段名称以及操作符请参见请求参数补充说明

Keystring

执行过滤操作的字段名称,该接口支持所有字段。

matched_host
OpValuestring

操作符。

eq
Valuesany

过滤值。

test.waf-top
Metricstring

用于区分返回的数据内容,不同的 Metric 对应不同的数据内容,该接口支持的 Metric 如下:

  • mitigated_requests,返回被拦截的请求的时序统计数据。
  • monitored_requests,返回只命中观察类型规则的请求的时序统计数据。
  • mitigated_requests_group_by_defense_scene,返回的数据按照模块划分,分别记录了每个模块的命中次数时序统计图。一条请求可能会命中多个模块,因此该 metric 返回的模块命中次数不能和请求数保持一致。
  • mitigated_requests_group_by_block_defense_scene,返回的数据按照模块划分,分别记录了每个模块的拦截量时序统计图。一条请求只会被一个模块拦截,因此该 metric 返回的统计计数是可以和请求数保持一致的。
mitigated_requests
RegionIdstring

WAF 实例所属地域。取值:

  • cn-hangzhou:表示中国内地。
  • ap-southeast-1:表示非中国内地。
cn-hangzhou
ResourceManagerResourceGroupIdstring

阿里云资源组 ID。

rg-acfm***q

操作符说明

操作符含义说明
操作符含义说明
all-not-match不等于任一值字段值和数据集合中的任意数据都不相等,例如过滤 real_client_ip 不等于集合中任一值:
{"Key":"real_client_ip","OpValue":"all-not-match","Values":["1.1.1.1","2.2.2.2","3.3.3.3"]}
contain包含字段值包含某个字符串,例如过滤 URL 包含"test"的数据:
{"Key":"request_path","OpValue":"contain","Values":"test"}
eq等于字段值等于某个字符串,例如过滤 URL 等于"/testcase"的数据:
{"Key":"request_path","OpValue":"eq","Values":"/testcase"}
match-one等于多值之一字段值和数据集合中的任意一数据相等,例如过滤 real_client_ip 等于集合中任一值:
{"Key":"real_client_ip","OpValue":"match-one","Values":["1.1.1.1","2.2.2.2","3.3.3.3"]}
ne不等于字段值不等于某个字符串,例如过滤 URL 不等于"/testcase"的统计数据:
{"Key":"request_path","OpValue":"ne","Values":"/testcase"}
not-contain不包含字段值不包含某个字符串,例如过滤 URL 不包含"test"的数据:
{"Key":"request_path","OpValue":"not-contain","Values":"test"}
prefix-match前缀匹配字段值以某个字符串作为前缀,例如滤 URL 前缀是"/testcase"的数据:
{"Key":"request_path","OpValue":"prefix-match","Values":"/testcase"}
suffix-match后缀匹配字段值以某个字符串作为后缀,例如过滤 URL 后缀是"/testcase"的数据:
{"Key":"request_path","OpValue":"suffix-match","Values":"/testcase"}

过滤条件支持的 Key

字段名称字段含义支持的操作符
字段名称字段含义支持的操作符
action防护动作,即该请求最终被处置的动作。ne、eq
cluster防护集群。ne、eq、
match-one、
all-not-match
defense_scene防护模块,一条请求可能命中多个防护模块,使用该字段过滤出的请求可能也会同时命中其它模块。ne、eq
hosthttp 头部的 host。contain、
not-contain、ne、eq、match-one、all-not-match、prefix-match、suffix-match
http_cookiehttp 头部的 cookie。contain、
not-contain、ne、eq、match-one、
all-not-match、prefix-match、suffix-match
http_user_agenthttp 头部获取的 User-Agent。contain、
not-contain、ne、eq、match-one、
all-not-match、prefix-match、suffix-match
matched_host防护对象。ne、eq、
match-one、
all-not-match
real_client_ip请求源 IP,操作符后跟随的参数只能是 IP 地址字符串或者 IP 地址字符串列表,不支持网段查询。ne、eq、
match-one、
all-not-match
remote_country_idhttp 请求源 IP 归属国家。ne、eq、
match-one、
all-not-match
remote_region_idhttp 请求源 IP 省市。ne、eq、
match-one、
all-not-match
request_methodhttp 请求方法。ne、eq、
match-one、
all-not-match
request_pathhttp 请求 URL,不包含 query。contain、
not-contain、ne、eq、match-one、
all-not-match、prefix-match、suffix-match
request_traceid标识请求的唯一 ID。ne、eq、
match-one、
all-not-match
rule_id规则 ID,一条请求可能命中多条规则,使用该字段过滤出的请求可能也会同时命中其它规则。ne、eq

返回参数

名称类型描述示例值
名称类型描述示例值
object

返回的数据结果,格式样例参见示例

RequestIdstring

请求 ID。

D827FCFE-90A7-4330-9326-*****4C7726
SecurityEventTimeSeriesarray<object>

返回的时间序列数据,支持返回多个值的时间序列数据。

Serieobject

单个时间序列数据,时间序列数据主要包含两个数组,分别对应 Timestamps 和 Values 数组,Timestamps 数组中包含了固定时间间隔的时间序列,Values 数组中包含了每个固定时间间隔内的统计计数,这两个数组包含的节点个数是一样的,两者的数据点是一一对应的关系。

Metricstring

返回的数据内容,跟入参中的 Metric 含义保持一致。

monitored_requests
Timestampsarray

时间序列,每个点代表一个时间范围的起始时间。

Timestring

每个数据统计点的起始统计时间,使用 UNIX 时间戳字符串表示。

[]
Valuesarray

数据序列,每个点代表一定时间范围内的统计计数。

Valuelong

当前时间范围的统计计数。

[]
TimeSeriesMetaDataobject

返回数据的元信息。

DateRangeobject

查询时使用的时间范围。

StartDatelong

查询数据时使用的开始时间,使用 UNIX 时间戳表示,单位:秒。该值和入参数重的 StartDate 一致。

1713888000
EndDatelong

查询数据时使用的结束时间,使用 UNIX 时间戳表示,单位:秒。该值和入参数重的 EndDate 一致。

1713888600
AggregateIntervalstring

返回的时间序列数据中,每个数据点的统计时间粒度,比如"15m"则表示返回的每个数据点是每 15 分钟的统计数据。返回数据的时间粒度参见时间序列数据点时间粒度说明

1m
Unitsstring

返回的统计数据的单位。

requests

时间序列数据点时间粒度说明

查询数据时选择不同的时间范围,返回的数据的统计时间粒度不一样。

  • 查询时间范围小于 3 小时,返回的数据点的统计时间粒度为 1m(1 分钟)。
  • 查询时间范围大于等于 3 小时小于 6 小时,返回的数据点的统计时间粒度为 5m(5 分钟)。
  • 查询时间范围大于等于 6 小时小于 24 小时,返回的数据点的统计时间粒度为 15m(15 分钟)。
  • 查询时间范围大于等于 24 小时小于 7 天,返回的数据点的统计时间粒度为 1h(1 小时)。
  • 查询时间范围大于等于 7 天小于 30 天,返回的数据点的统计时间粒度为 1d(1 天)。

示例

正常返回示例

JSON格式

{
  "RequestId": "D827FCFE-90A7-4330-9326-*****4C7726\n",
  "SecurityEventTimeSeries": [
    {
      "Metric": "monitored_requests",
      "Timestamps": [
        "[]"
      ],
      "Values": [
        0
      ]
    }
  ],
  "TimeSeriesMetaData": {
    "DateRange": {
      "StartDate": 1713888000,
      "EndDate": 1713888600
    },
    "AggregateInterval": "1m",
    "Units": "requests\n"
  }
}

错误码

HTTP status code错误码错误信息描述
HTTP status code错误码错误信息描述
400Waf.Report.%sInvalid parameter:%s.无效的参数:%s
400Waf.Report.InternalErrorServer error occurred in report service.报表服务内部错误

访问错误中心查看更多错误码。

  • 本页导读 (1)
  • 接口说明
  • 调试
  • 授权信息
  • 请求参数
  • 返回参数
  • 示例
  • 错误码