tencentcloud-sdk-waf 1.0.297 → 1.0.300

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -382,6 +382,221 @@ module TencentCloud
382
382
  end
383
383
  end
384
384
 
385
+ # AddDomainWhiteRule请求参数结构体
386
+ class AddDomainWhiteRuleRequest < TencentCloud::Common::AbstractModel
387
+ # @param Domain: 需要添加的域名
388
+ # @type Domain: String
389
+ # @param Rules: 需要添加的规则
390
+ # @type Rules: Array
391
+ # @param Url: 需要添加的规则url
392
+ # @type Url: String
393
+ # @param Function: 规则的方法
394
+ # @type Function: String
395
+ # @param Status: 规则的开关
396
+ # @type Status: Integer
397
+
398
+ attr_accessor :Domain, :Rules, :Url, :Function, :Status
399
+
400
+ def initialize(domain=nil, rules=nil, url=nil, function=nil, status=nil)
401
+ @Domain = domain
402
+ @Rules = rules
403
+ @Url = url
404
+ @Function = function
405
+ @Status = status
406
+ end
407
+
408
+ def deserialize(params)
409
+ @Domain = params['Domain']
410
+ @Rules = params['Rules']
411
+ @Url = params['Url']
412
+ @Function = params['Function']
413
+ @Status = params['Status']
414
+ end
415
+ end
416
+
417
+ # AddDomainWhiteRule返回参数结构体
418
+ class AddDomainWhiteRuleResponse < TencentCloud::Common::AbstractModel
419
+ # @param Id: 规则id
420
+ # @type Id: Integer
421
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
422
+ # @type RequestId: String
423
+
424
+ attr_accessor :Id, :RequestId
425
+
426
+ def initialize(id=nil, requestid=nil)
427
+ @Id = id
428
+ @RequestId = requestid
429
+ end
430
+
431
+ def deserialize(params)
432
+ @Id = params['Id']
433
+ @RequestId = params['RequestId']
434
+ end
435
+ end
436
+
437
+ # AddSpartaProtection请求参数结构体
438
+ class AddSpartaProtectionRequest < TencentCloud::Common::AbstractModel
439
+ # @param Domain: 需要防御的域名
440
+ # @type Domain: String
441
+ # @param CertType: 证书类型,0表示没有证书,CertType=1表示自有证书,2 为托管证书
442
+ # @type CertType: Integer
443
+ # @param IsCdn: 表示是否开启了CDN代理,1:有部署CDN,0:未部署CDN
444
+ # @type IsCdn: Integer
445
+ # @param UpstreamType: 回源类型,0表示通过IP回源,1 表示通过域名回源
446
+ # @type UpstreamType: Integer
447
+ # @param IsWebsocket: 是否开启WebSocket支持,1表示开启,0不开启
448
+ # @type IsWebsocket: Integer
449
+ # @param LoadBalance: 负载均衡策略,0表示轮徇,1表示IP hash
450
+ # @type LoadBalance: String
451
+ # @param Cert: CertType=1时,需要填次参数,表示证书内容
452
+ # @type Cert: String
453
+ # @param PrivateKey: CertType=1时,需要填次参数,表示证书的私钥
454
+ # @type PrivateKey: String
455
+ # @param SSLId: CertType=2时,需要填次参数,表示证书的ID
456
+ # @type SSLId: String
457
+ # @param ResourceId: Waf的资源ID
458
+ # @type ResourceId: String
459
+ # @param UpstreamScheme: HTTPS回源协议,填http或者https
460
+ # @type UpstreamScheme: String
461
+ # @param HttpsUpstreamPort: HTTPS回源端口,仅UpstreamScheme为http时需要填当前字段
462
+ # @type HttpsUpstreamPort: String
463
+ # @param IsGray: 是否开启灰度,0表示不开启灰度
464
+ # @type IsGray: Integer
465
+ # @param GrayAreas: 灰度的地区
466
+ # @type GrayAreas: Array
467
+ # @param UpstreamDomain: UpstreamType=1时,填次字段表示回源域名
468
+ # @type UpstreamDomain: String
469
+ # @param SrcList: UpstreamType=0时,填次字段表示回源ip
470
+ # @type SrcList: Array
471
+ # @param IsHttp2: 是否开启HTTP2,开启HTTP2需要HTTPS支持
472
+ # @type IsHttp2: Integer
473
+ # @param HttpsRewrite: 表示是否强制跳转到HTTPS,1强制跳转Https,0不强制跳转
474
+ # @type HttpsRewrite: Integer
475
+ # @param Ports: 服务有多端口需要设置此字段
476
+ # @type Ports: Array
477
+ # @param Edition: 版本:sparta-waf、clb-waf、cdn-waf
478
+ # @type Edition: String
479
+ # @param IsKeepAlive: 是否开启长连接,仅IP回源时可以用填次参数,域名回源时这个参数无效
480
+ # @type IsKeepAlive: String
481
+ # @param InstanceID: 实例id,上线之后带上此字段
482
+ # @type InstanceID: String
483
+ # @param Anycast: anycast ip类型开关: 0 普通ip 1 Anycast ip
484
+ # @type Anycast: Integer
485
+
486
+ attr_accessor :Domain, :CertType, :IsCdn, :UpstreamType, :IsWebsocket, :LoadBalance, :Cert, :PrivateKey, :SSLId, :ResourceId, :UpstreamScheme, :HttpsUpstreamPort, :IsGray, :GrayAreas, :UpstreamDomain, :SrcList, :IsHttp2, :HttpsRewrite, :Ports, :Edition, :IsKeepAlive, :InstanceID, :Anycast
487
+
488
+ def initialize(domain=nil, certtype=nil, iscdn=nil, upstreamtype=nil, iswebsocket=nil, loadbalance=nil, cert=nil, privatekey=nil, sslid=nil, resourceid=nil, upstreamscheme=nil, httpsupstreamport=nil, isgray=nil, grayareas=nil, upstreamdomain=nil, srclist=nil, ishttp2=nil, httpsrewrite=nil, ports=nil, edition=nil, iskeepalive=nil, instanceid=nil, anycast=nil)
489
+ @Domain = domain
490
+ @CertType = certtype
491
+ @IsCdn = iscdn
492
+ @UpstreamType = upstreamtype
493
+ @IsWebsocket = iswebsocket
494
+ @LoadBalance = loadbalance
495
+ @Cert = cert
496
+ @PrivateKey = privatekey
497
+ @SSLId = sslid
498
+ @ResourceId = resourceid
499
+ @UpstreamScheme = upstreamscheme
500
+ @HttpsUpstreamPort = httpsupstreamport
501
+ @IsGray = isgray
502
+ @GrayAreas = grayareas
503
+ @UpstreamDomain = upstreamdomain
504
+ @SrcList = srclist
505
+ @IsHttp2 = ishttp2
506
+ @HttpsRewrite = httpsrewrite
507
+ @Ports = ports
508
+ @Edition = edition
509
+ @IsKeepAlive = iskeepalive
510
+ @InstanceID = instanceid
511
+ @Anycast = anycast
512
+ end
513
+
514
+ def deserialize(params)
515
+ @Domain = params['Domain']
516
+ @CertType = params['CertType']
517
+ @IsCdn = params['IsCdn']
518
+ @UpstreamType = params['UpstreamType']
519
+ @IsWebsocket = params['IsWebsocket']
520
+ @LoadBalance = params['LoadBalance']
521
+ @Cert = params['Cert']
522
+ @PrivateKey = params['PrivateKey']
523
+ @SSLId = params['SSLId']
524
+ @ResourceId = params['ResourceId']
525
+ @UpstreamScheme = params['UpstreamScheme']
526
+ @HttpsUpstreamPort = params['HttpsUpstreamPort']
527
+ @IsGray = params['IsGray']
528
+ @GrayAreas = params['GrayAreas']
529
+ @UpstreamDomain = params['UpstreamDomain']
530
+ @SrcList = params['SrcList']
531
+ @IsHttp2 = params['IsHttp2']
532
+ @HttpsRewrite = params['HttpsRewrite']
533
+ unless params['Ports'].nil?
534
+ @Ports = []
535
+ params['Ports'].each do |i|
536
+ portitem_tmp = PortItem.new
537
+ portitem_tmp.deserialize(i)
538
+ @Ports << portitem_tmp
539
+ end
540
+ end
541
+ @Edition = params['Edition']
542
+ @IsKeepAlive = params['IsKeepAlive']
543
+ @InstanceID = params['InstanceID']
544
+ @Anycast = params['Anycast']
545
+ end
546
+ end
547
+
548
+ # AddSpartaProtection返回参数结构体
549
+ class AddSpartaProtectionResponse < TencentCloud::Common::AbstractModel
550
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
551
+ # @type RequestId: String
552
+
553
+ attr_accessor :RequestId
554
+
555
+ def initialize(requestid=nil)
556
+ @RequestId = requestid
557
+ end
558
+
559
+ def deserialize(params)
560
+ @RequestId = params['RequestId']
561
+ end
562
+ end
563
+
564
+ # Waf 攻击自动封禁详情
565
+ class AutoDenyDetail < TencentCloud::Common::AbstractModel
566
+ # @param AttackTags: 攻击封禁类型标签
567
+ # @type AttackTags: Array
568
+ # @param AttackThreshold: 攻击次数阈值
569
+ # @type AttackThreshold: Integer
570
+ # @param DefenseStatus: 自动封禁状态
571
+ # @type DefenseStatus: Integer
572
+ # @param TimeThreshold: 攻击时间阈值
573
+ # @type TimeThreshold: Integer
574
+ # @param DenyTimeThreshold: 自动封禁时间
575
+ # @type DenyTimeThreshold: Integer
576
+ # @param LastUpdateTime: 最后更新时间
577
+ # @type LastUpdateTime: String
578
+
579
+ attr_accessor :AttackTags, :AttackThreshold, :DefenseStatus, :TimeThreshold, :DenyTimeThreshold, :LastUpdateTime
580
+
581
+ def initialize(attacktags=nil, attackthreshold=nil, defensestatus=nil, timethreshold=nil, denytimethreshold=nil, lastupdatetime=nil)
582
+ @AttackTags = attacktags
583
+ @AttackThreshold = attackthreshold
584
+ @DefenseStatus = defensestatus
585
+ @TimeThreshold = timethreshold
586
+ @DenyTimeThreshold = denytimethreshold
587
+ @LastUpdateTime = lastupdatetime
588
+ end
589
+
590
+ def deserialize(params)
591
+ @AttackTags = params['AttackTags']
592
+ @AttackThreshold = params['AttackThreshold']
593
+ @DefenseStatus = params['DefenseStatus']
594
+ @TimeThreshold = params['TimeThreshold']
595
+ @DenyTimeThreshold = params['DenyTimeThreshold']
596
+ @LastUpdateTime = params['LastUpdateTime']
597
+ end
598
+ end
599
+
385
600
  # bot的趋势图对象
386
601
  class BotStatPointItem < TencentCloud::Common::AbstractModel
387
602
  # @param TimeStamp: 横坐标
@@ -606,6 +821,47 @@ module TencentCloud
606
821
  end
607
822
  end
608
823
 
824
+ # DeleteDomainWhiteRules请求参数结构体
825
+ class DeleteDomainWhiteRulesRequest < TencentCloud::Common::AbstractModel
826
+ # @param Domain: 需要删除的规则域名
827
+ # @type Domain: String
828
+ # @param Ids: 需要删除的白名单规则
829
+ # @type Ids: Array
830
+
831
+ attr_accessor :Domain, :Ids
832
+
833
+ def initialize(domain=nil, ids=nil)
834
+ @Domain = domain
835
+ @Ids = ids
836
+ end
837
+
838
+ def deserialize(params)
839
+ @Domain = params['Domain']
840
+ @Ids = params['Ids']
841
+ end
842
+ end
843
+
844
+ # DeleteDomainWhiteRules返回参数结构体
845
+ class DeleteDomainWhiteRulesResponse < TencentCloud::Common::AbstractModel
846
+ # @param Data: 出参
847
+ # 注意:此字段可能返回 null,表示取不到有效值。
848
+ # @type Data: String
849
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
850
+ # @type RequestId: String
851
+
852
+ attr_accessor :Data, :RequestId
853
+
854
+ def initialize(data=nil, requestid=nil)
855
+ @Data = data
856
+ @RequestId = requestid
857
+ end
858
+
859
+ def deserialize(params)
860
+ @Data = params['Data']
861
+ @RequestId = params['RequestId']
862
+ end
863
+ end
864
+
609
865
  # DeleteDownloadRecord请求参数结构体
610
866
  class DeleteDownloadRecordRequest < TencentCloud::Common::AbstractModel
611
867
  # @param Flow: 记录id
@@ -638,6 +894,56 @@ module TencentCloud
638
894
  end
639
895
  end
640
896
 
897
+ # DeleteIpAccessControl请求参数结构体
898
+ class DeleteIpAccessControlRequest < TencentCloud::Common::AbstractModel
899
+ # @param Domain: 域名
900
+ # @type Domain: String
901
+ # @param Items: 删除的ip数组
902
+ # @type Items: Array
903
+ # @param DeleteAll: 删除对应的域名下的所有黑/白IP名额单
904
+ # @type DeleteAll: Boolean
905
+
906
+ attr_accessor :Domain, :Items, :DeleteAll
907
+
908
+ def initialize(domain=nil, items=nil, deleteall=nil)
909
+ @Domain = domain
910
+ @Items = items
911
+ @DeleteAll = deleteall
912
+ end
913
+
914
+ def deserialize(params)
915
+ @Domain = params['Domain']
916
+ @Items = params['Items']
917
+ @DeleteAll = params['DeleteAll']
918
+ end
919
+ end
920
+
921
+ # DeleteIpAccessControl返回参数结构体
922
+ class DeleteIpAccessControlResponse < TencentCloud::Common::AbstractModel
923
+ # @param FailedItems: 删除失败的条目
924
+ # 注意:此字段可能返回 null,表示取不到有效值。
925
+ # @type FailedItems: String
926
+ # @param FailedCount: 删除失败的条目数
927
+ # 注意:此字段可能返回 null,表示取不到有效值。
928
+ # @type FailedCount: Integer
929
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
930
+ # @type RequestId: String
931
+
932
+ attr_accessor :FailedItems, :FailedCount, :RequestId
933
+
934
+ def initialize(faileditems=nil, failedcount=nil, requestid=nil)
935
+ @FailedItems = faileditems
936
+ @FailedCount = failedcount
937
+ @RequestId = requestid
938
+ end
939
+
940
+ def deserialize(params)
941
+ @FailedItems = params['FailedItems']
942
+ @FailedCount = params['FailedCount']
943
+ @RequestId = params['RequestId']
944
+ end
945
+ end
946
+
641
947
  # DeleteSession请求参数结构体
642
948
  class DeleteSessionRequest < TencentCloud::Common::AbstractModel
643
949
  # @param Domain: 域名
@@ -827,6 +1133,89 @@ module TencentCloud
827
1133
  end
828
1134
  end
829
1135
 
1136
+ # DescribeAutoDenyIP请求参数结构体
1137
+ class DescribeAutoDenyIPRequest < TencentCloud::Common::AbstractModel
1138
+ # @param Domain: 域名
1139
+ # @type Domain: String
1140
+ # @param Ip: 查询IP自动封禁状态
1141
+ # @type Ip: String
1142
+ # @param Count: 计数标识
1143
+ # @type Count: Integer
1144
+ # @param Category: 类别
1145
+ # @type Category: String
1146
+ # @param VtsMin: 有效时间最小时间戳
1147
+ # @type VtsMin: Integer
1148
+ # @param VtsMax: 有效时间最大时间戳
1149
+ # @type VtsMax: Integer
1150
+ # @param CtsMin: 创建时间最小时间戳
1151
+ # @type CtsMin: Integer
1152
+ # @param CtsMax: 创建时间最大时间戳
1153
+ # @type CtsMax: Integer
1154
+ # @param Skip: 偏移量
1155
+ # @type Skip: Integer
1156
+ # @param Limit: 限制条数
1157
+ # @type Limit: Integer
1158
+ # @param Name: 策略名字
1159
+ # @type Name: String
1160
+ # @param Sort: 排序参数
1161
+ # @type Sort: String
1162
+
1163
+ attr_accessor :Domain, :Ip, :Count, :Category, :VtsMin, :VtsMax, :CtsMin, :CtsMax, :Skip, :Limit, :Name, :Sort
1164
+
1165
+ def initialize(domain=nil, ip=nil, count=nil, category=nil, vtsmin=nil, vtsmax=nil, ctsmin=nil, ctsmax=nil, skip=nil, limit=nil, name=nil, sort=nil)
1166
+ @Domain = domain
1167
+ @Ip = ip
1168
+ @Count = count
1169
+ @Category = category
1170
+ @VtsMin = vtsmin
1171
+ @VtsMax = vtsmax
1172
+ @CtsMin = ctsmin
1173
+ @CtsMax = ctsmax
1174
+ @Skip = skip
1175
+ @Limit = limit
1176
+ @Name = name
1177
+ @Sort = sort
1178
+ end
1179
+
1180
+ def deserialize(params)
1181
+ @Domain = params['Domain']
1182
+ @Ip = params['Ip']
1183
+ @Count = params['Count']
1184
+ @Category = params['Category']
1185
+ @VtsMin = params['VtsMin']
1186
+ @VtsMax = params['VtsMax']
1187
+ @CtsMin = params['CtsMin']
1188
+ @CtsMax = params['CtsMax']
1189
+ @Skip = params['Skip']
1190
+ @Limit = params['Limit']
1191
+ @Name = params['Name']
1192
+ @Sort = params['Sort']
1193
+ end
1194
+ end
1195
+
1196
+ # DescribeAutoDenyIP返回参数结构体
1197
+ class DescribeAutoDenyIPResponse < TencentCloud::Common::AbstractModel
1198
+ # @param Data: 查询IP封禁状态返回结果
1199
+ # @type Data: :class:`Tencentcloud::Waf.v20180125.models.IpHitItemsData`
1200
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1201
+ # @type RequestId: String
1202
+
1203
+ attr_accessor :Data, :RequestId
1204
+
1205
+ def initialize(data=nil, requestid=nil)
1206
+ @Data = data
1207
+ @RequestId = requestid
1208
+ end
1209
+
1210
+ def deserialize(params)
1211
+ unless params['Data'].nil?
1212
+ @Data = IpHitItemsData.new
1213
+ @Data.deserialize(params['Data'])
1214
+ end
1215
+ @RequestId = params['RequestId']
1216
+ end
1217
+ end
1218
+
830
1219
  # DescribeCustomRules接口的翻页参数
831
1220
  class DescribeCustomRulesPagingInfo < TencentCloud::Common::AbstractModel
832
1221
  # @param Offset: 当前页码
@@ -972,6 +1361,73 @@ module TencentCloud
972
1361
  end
973
1362
  end
974
1363
 
1364
+ # DescribeDomainWhiteRules请求参数结构体
1365
+ class DescribeDomainWhiteRulesRequest < TencentCloud::Common::AbstractModel
1366
+ # @param Domain: 需要查询的域名
1367
+ # @type Domain: String
1368
+ # @param Url: 请求的白名单匹配路径
1369
+ # @type Url: String
1370
+ # @param Page: 翻到多少页
1371
+ # @type Page: Integer
1372
+ # @param Count: 每页展示的条数
1373
+ # @type Count: Integer
1374
+ # @param Sort: 排序方式
1375
+ # @type Sort: String
1376
+ # @param RuleId: 规则ID
1377
+ # @type RuleId: String
1378
+
1379
+ attr_accessor :Domain, :Url, :Page, :Count, :Sort, :RuleId
1380
+
1381
+ def initialize(domain=nil, url=nil, page=nil, count=nil, sort=nil, ruleid=nil)
1382
+ @Domain = domain
1383
+ @Url = url
1384
+ @Page = page
1385
+ @Count = count
1386
+ @Sort = sort
1387
+ @RuleId = ruleid
1388
+ end
1389
+
1390
+ def deserialize(params)
1391
+ @Domain = params['Domain']
1392
+ @Url = params['Url']
1393
+ @Page = params['Page']
1394
+ @Count = params['Count']
1395
+ @Sort = params['Sort']
1396
+ @RuleId = params['RuleId']
1397
+ end
1398
+ end
1399
+
1400
+ # DescribeDomainWhiteRules返回参数结构体
1401
+ class DescribeDomainWhiteRulesResponse < TencentCloud::Common::AbstractModel
1402
+ # @param RuleList: 规则列表
1403
+ # @type RuleList: Array
1404
+ # @param Total: 规则的数量
1405
+ # @type Total: Integer
1406
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1407
+ # @type RequestId: String
1408
+
1409
+ attr_accessor :RuleList, :Total, :RequestId
1410
+
1411
+ def initialize(rulelist=nil, total=nil, requestid=nil)
1412
+ @RuleList = rulelist
1413
+ @Total = total
1414
+ @RequestId = requestid
1415
+ end
1416
+
1417
+ def deserialize(params)
1418
+ unless params['RuleList'].nil?
1419
+ @RuleList = []
1420
+ params['RuleList'].each do |i|
1421
+ rulelist_tmp = RuleList.new
1422
+ rulelist_tmp.deserialize(i)
1423
+ @RuleList << rulelist_tmp
1424
+ end
1425
+ end
1426
+ @Total = params['Total']
1427
+ @RequestId = params['RequestId']
1428
+ end
1429
+ end
1430
+
975
1431
  # DescribeFlowTrend请求参数结构体
976
1432
  class DescribeFlowTrendRequest < TencentCloud::Common::AbstractModel
977
1433
  # @param Domain: 需要获取流量趋势的域名, all表示所有域名
@@ -1023,22 +1479,71 @@ module TencentCloud
1023
1479
  end
1024
1480
  end
1025
1481
 
1026
- # DescribeUserClbWafRegions请求参数结构体
1027
- class DescribeUserClbWafRegionsRequest < TencentCloud::Common::AbstractModel
1482
+ # DescribeIpAccessControl请求参数结构体
1483
+ class DescribeIpAccessControlRequest < TencentCloud::Common::AbstractModel
1484
+ # @param Domain: 域名
1485
+ # @type Domain: String
1486
+ # @param Count: 计数标识
1487
+ # @type Count: Integer
1488
+ # @param ActionType: 动作
1489
+ # @type ActionType: Integer
1490
+ # @param VtsMin: 有效时间最小时间戳
1491
+ # @type VtsMin: Integer
1492
+ # @param VtsMax: 有效时间最大时间戳
1493
+ # @type VtsMax: Integer
1494
+ # @param CtsMin: 创建时间最小时间戳
1495
+ # @type CtsMin: Integer
1496
+ # @param CtsMax: 创建时间最大时间戳
1497
+ # @type CtsMax: Integer
1498
+ # @param OffSet: 偏移
1499
+ # @type OffSet: Integer
1500
+ # @param Limit: 限制
1501
+ # @type Limit: Integer
1502
+ # @param Source: 来源
1503
+ # @type Source: String
1504
+ # @param Sort: 排序参数
1505
+ # @type Sort: String
1506
+ # @param Ip: ip
1507
+ # @type Ip: String
1028
1508
 
1509
+ attr_accessor :Domain, :Count, :ActionType, :VtsMin, :VtsMax, :CtsMin, :CtsMax, :OffSet, :Limit, :Source, :Sort, :Ip
1029
1510
 
1030
- def initialize()
1511
+ def initialize(domain=nil, count=nil, actiontype=nil, vtsmin=nil, vtsmax=nil, ctsmin=nil, ctsmax=nil, offset=nil, limit=nil, source=nil, sort=nil, ip=nil)
1512
+ @Domain = domain
1513
+ @Count = count
1514
+ @ActionType = actiontype
1515
+ @VtsMin = vtsmin
1516
+ @VtsMax = vtsmax
1517
+ @CtsMin = ctsmin
1518
+ @CtsMax = ctsmax
1519
+ @OffSet = offset
1520
+ @Limit = limit
1521
+ @Source = source
1522
+ @Sort = sort
1523
+ @Ip = ip
1031
1524
  end
1032
1525
 
1033
1526
  def deserialize(params)
1527
+ @Domain = params['Domain']
1528
+ @Count = params['Count']
1529
+ @ActionType = params['ActionType']
1530
+ @VtsMin = params['VtsMin']
1531
+ @VtsMax = params['VtsMax']
1532
+ @CtsMin = params['CtsMin']
1533
+ @CtsMax = params['CtsMax']
1534
+ @OffSet = params['OffSet']
1535
+ @Limit = params['Limit']
1536
+ @Source = params['Source']
1537
+ @Sort = params['Sort']
1538
+ @Ip = params['Ip']
1034
1539
  end
1035
1540
  end
1036
1541
 
1037
- # DescribeUserClbWafRegions返回参数结构体
1038
- class DescribeUserClbWafRegionsResponse < TencentCloud::Common::AbstractModel
1039
- # @param Data: 地域(标准的ap-格式)列表
1542
+ # DescribeIpAccessControl返回参数结构体
1543
+ class DescribeIpAccessControlResponse < TencentCloud::Common::AbstractModel
1544
+ # @param Data: 输出
1040
1545
  # 注意:此字段可能返回 null,表示取不到有效值。
1041
- # @type Data: Array
1546
+ # @type Data: :class:`Tencentcloud::Waf.v20180125.models.IpAccessControlData`
1042
1547
  # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1043
1548
  # @type RequestId: String
1044
1549
 
@@ -1050,37 +1555,272 @@ module TencentCloud
1050
1555
  end
1051
1556
 
1052
1557
  def deserialize(params)
1053
- @Data = params['Data']
1558
+ unless params['Data'].nil?
1559
+ @Data = IpAccessControlData.new
1560
+ @Data.deserialize(params['Data'])
1561
+ end
1054
1562
  @RequestId = params['RequestId']
1055
1563
  end
1056
1564
  end
1057
1565
 
1058
- # DescribeAccessExports接口
1059
- class ExportAccessInfo < TencentCloud::Common::AbstractModel
1060
- # @param ExportId: 日志导出任务ID
1061
- # 注意:此字段可能返回 null,表示取不到有效值。
1062
- # @type ExportId: String
1063
- # @param Query: 日志导出查询语句
1064
- # 注意:此字段可能返回 null,表示取不到有效值。
1065
- # @type Query: String
1066
- # @param FileName: 日志导出文件名
1067
- # 注意:此字段可能返回 null,表示取不到有效值。
1068
- # @type FileName: String
1069
- # @param FileSize: 日志文件大小
1070
- # @type FileSize: Integer
1071
- # @param Order: 日志导出时间排序
1072
- # 注意:此字段可能返回 null,表示取不到有效值。
1073
- # @type Order: String
1074
- # @param Format: 日志导出格式
1075
- # 注意:此字段可能返回 null,表示取不到有效值。
1076
- # @type Format: String
1077
- # @param Count: 日志导出数量
1078
- # 注意:此字段可能返回 null,表示取不到有效值。
1566
+ # DescribeIpHitItems请求参数结构体
1567
+ class DescribeIpHitItemsRequest < TencentCloud::Common::AbstractModel
1568
+ # @param Domain: 域名
1569
+ # @type Domain: String
1570
+ # @param Count: 计数标识
1079
1571
  # @type Count: Integer
1080
- # @param Status: 日志下载状态。Processing:导出正在进行中,Complete:导出完成,Failed:导出失败,Expired:日志导出已过期(三天有效期)
1081
- # @type Status: String
1082
- # @param From: 日志导出起始时间
1083
- # @type From: Integer
1572
+ # @param Category: 类别
1573
+ # @type Category: String
1574
+ # @param VtsMin: 有效时间最小时间戳
1575
+ # @type VtsMin: Integer
1576
+ # @param VtsMax: 有效时间最大时间戳
1577
+ # @type VtsMax: Integer
1578
+ # @param CtsMin: 创建时间最小时间戳
1579
+ # @type CtsMin: Integer
1580
+ # @param CtsMax: 创建时间最大时间戳
1581
+ # @type CtsMax: Integer
1582
+ # @param Skip: 偏移参数
1583
+ # @type Skip: Integer
1584
+ # @param Limit: 限制数目
1585
+ # @type Limit: Integer
1586
+ # @param Name: 策略名称
1587
+ # @type Name: String
1588
+ # @param Sort: 排序参数
1589
+ # @type Sort: String
1590
+ # @param Ip: IP
1591
+ # @type Ip: String
1592
+
1593
+ attr_accessor :Domain, :Count, :Category, :VtsMin, :VtsMax, :CtsMin, :CtsMax, :Skip, :Limit, :Name, :Sort, :Ip
1594
+
1595
+ def initialize(domain=nil, count=nil, category=nil, vtsmin=nil, vtsmax=nil, ctsmin=nil, ctsmax=nil, skip=nil, limit=nil, name=nil, sort=nil, ip=nil)
1596
+ @Domain = domain
1597
+ @Count = count
1598
+ @Category = category
1599
+ @VtsMin = vtsmin
1600
+ @VtsMax = vtsmax
1601
+ @CtsMin = ctsmin
1602
+ @CtsMax = ctsmax
1603
+ @Skip = skip
1604
+ @Limit = limit
1605
+ @Name = name
1606
+ @Sort = sort
1607
+ @Ip = ip
1608
+ end
1609
+
1610
+ def deserialize(params)
1611
+ @Domain = params['Domain']
1612
+ @Count = params['Count']
1613
+ @Category = params['Category']
1614
+ @VtsMin = params['VtsMin']
1615
+ @VtsMax = params['VtsMax']
1616
+ @CtsMin = params['CtsMin']
1617
+ @CtsMax = params['CtsMax']
1618
+ @Skip = params['Skip']
1619
+ @Limit = params['Limit']
1620
+ @Name = params['Name']
1621
+ @Sort = params['Sort']
1622
+ @Ip = params['Ip']
1623
+ end
1624
+ end
1625
+
1626
+ # DescribeIpHitItems返回参数结构体
1627
+ class DescribeIpHitItemsResponse < TencentCloud::Common::AbstractModel
1628
+ # @param Data: 结果
1629
+ # 注意:此字段可能返回 null,表示取不到有效值。
1630
+ # @type Data: :class:`Tencentcloud::Waf.v20180125.models.IpHitItemsData`
1631
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1632
+ # @type RequestId: String
1633
+
1634
+ attr_accessor :Data, :RequestId
1635
+
1636
+ def initialize(data=nil, requestid=nil)
1637
+ @Data = data
1638
+ @RequestId = requestid
1639
+ end
1640
+
1641
+ def deserialize(params)
1642
+ unless params['Data'].nil?
1643
+ @Data = IpHitItemsData.new
1644
+ @Data.deserialize(params['Data'])
1645
+ end
1646
+ @RequestId = params['RequestId']
1647
+ end
1648
+ end
1649
+
1650
+ # DescribeUserClbWafRegions请求参数结构体
1651
+ class DescribeUserClbWafRegionsRequest < TencentCloud::Common::AbstractModel
1652
+
1653
+
1654
+ def initialize()
1655
+ end
1656
+
1657
+ def deserialize(params)
1658
+ end
1659
+ end
1660
+
1661
+ # DescribeUserClbWafRegions返回参数结构体
1662
+ class DescribeUserClbWafRegionsResponse < TencentCloud::Common::AbstractModel
1663
+ # @param Data: 地域(标准的ap-格式)列表
1664
+ # 注意:此字段可能返回 null,表示取不到有效值。
1665
+ # @type Data: Array
1666
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1667
+ # @type RequestId: String
1668
+
1669
+ attr_accessor :Data, :RequestId
1670
+
1671
+ def initialize(data=nil, requestid=nil)
1672
+ @Data = data
1673
+ @RequestId = requestid
1674
+ end
1675
+
1676
+ def deserialize(params)
1677
+ @Data = params['Data']
1678
+ @RequestId = params['RequestId']
1679
+ end
1680
+ end
1681
+
1682
+ # DescribeWafAutoDenyRules请求参数结构体
1683
+ class DescribeWafAutoDenyRulesRequest < TencentCloud::Common::AbstractModel
1684
+ # @param Domain: 域名
1685
+ # @type Domain: String
1686
+
1687
+ attr_accessor :Domain
1688
+
1689
+ def initialize(domain=nil)
1690
+ @Domain = domain
1691
+ end
1692
+
1693
+ def deserialize(params)
1694
+ @Domain = params['Domain']
1695
+ end
1696
+ end
1697
+
1698
+ # DescribeWafAutoDenyRules返回参数结构体
1699
+ class DescribeWafAutoDenyRulesResponse < TencentCloud::Common::AbstractModel
1700
+ # @param AttackThreshold: 攻击次数阈值
1701
+ # @type AttackThreshold: Integer
1702
+ # @param TimeThreshold: 攻击时间阈值
1703
+ # @type TimeThreshold: Integer
1704
+ # @param DenyTimeThreshold: 自动封禁时间
1705
+ # @type DenyTimeThreshold: Integer
1706
+ # @param DefenseStatus: 自动封禁状态
1707
+ # @type DefenseStatus: Integer
1708
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1709
+ # @type RequestId: String
1710
+
1711
+ attr_accessor :AttackThreshold, :TimeThreshold, :DenyTimeThreshold, :DefenseStatus, :RequestId
1712
+
1713
+ def initialize(attackthreshold=nil, timethreshold=nil, denytimethreshold=nil, defensestatus=nil, requestid=nil)
1714
+ @AttackThreshold = attackthreshold
1715
+ @TimeThreshold = timethreshold
1716
+ @DenyTimeThreshold = denytimethreshold
1717
+ @DefenseStatus = defensestatus
1718
+ @RequestId = requestid
1719
+ end
1720
+
1721
+ def deserialize(params)
1722
+ @AttackThreshold = params['AttackThreshold']
1723
+ @TimeThreshold = params['TimeThreshold']
1724
+ @DenyTimeThreshold = params['DenyTimeThreshold']
1725
+ @DefenseStatus = params['DefenseStatus']
1726
+ @RequestId = params['RequestId']
1727
+ end
1728
+ end
1729
+
1730
+ # DescribeWafAutoDenyStatus请求参数结构体
1731
+ class DescribeWafAutoDenyStatusRequest < TencentCloud::Common::AbstractModel
1732
+
1733
+
1734
+ def initialize()
1735
+ end
1736
+
1737
+ def deserialize(params)
1738
+ end
1739
+ end
1740
+
1741
+ # DescribeWafAutoDenyStatus返回参数结构体
1742
+ class DescribeWafAutoDenyStatusResponse < TencentCloud::Common::AbstractModel
1743
+ # @param WafAutoDenyDetails: WAF 自动封禁详情
1744
+ # @type WafAutoDenyDetails: :class:`Tencentcloud::Waf.v20180125.models.AutoDenyDetail`
1745
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1746
+ # @type RequestId: String
1747
+
1748
+ attr_accessor :WafAutoDenyDetails, :RequestId
1749
+
1750
+ def initialize(wafautodenydetails=nil, requestid=nil)
1751
+ @WafAutoDenyDetails = wafautodenydetails
1752
+ @RequestId = requestid
1753
+ end
1754
+
1755
+ def deserialize(params)
1756
+ unless params['WafAutoDenyDetails'].nil?
1757
+ @WafAutoDenyDetails = AutoDenyDetail.new
1758
+ @WafAutoDenyDetails.deserialize(params['WafAutoDenyDetails'])
1759
+ end
1760
+ @RequestId = params['RequestId']
1761
+ end
1762
+ end
1763
+
1764
+ # DescribeWafThreatenIntelligence请求参数结构体
1765
+ class DescribeWafThreatenIntelligenceRequest < TencentCloud::Common::AbstractModel
1766
+
1767
+
1768
+ def initialize()
1769
+ end
1770
+
1771
+ def deserialize(params)
1772
+ end
1773
+ end
1774
+
1775
+ # DescribeWafThreatenIntelligence返回参数结构体
1776
+ class DescribeWafThreatenIntelligenceResponse < TencentCloud::Common::AbstractModel
1777
+ # @param WafThreatenIntelligenceDetails: WAF 威胁情报封禁信息
1778
+ # @type WafThreatenIntelligenceDetails: :class:`Tencentcloud::Waf.v20180125.models.WafThreatenIntelligenceDetails`
1779
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1780
+ # @type RequestId: String
1781
+
1782
+ attr_accessor :WafThreatenIntelligenceDetails, :RequestId
1783
+
1784
+ def initialize(wafthreatenintelligencedetails=nil, requestid=nil)
1785
+ @WafThreatenIntelligenceDetails = wafthreatenintelligencedetails
1786
+ @RequestId = requestid
1787
+ end
1788
+
1789
+ def deserialize(params)
1790
+ unless params['WafThreatenIntelligenceDetails'].nil?
1791
+ @WafThreatenIntelligenceDetails = WafThreatenIntelligenceDetails.new
1792
+ @WafThreatenIntelligenceDetails.deserialize(params['WafThreatenIntelligenceDetails'])
1793
+ end
1794
+ @RequestId = params['RequestId']
1795
+ end
1796
+ end
1797
+
1798
+ # DescribeAccessExports接口
1799
+ class ExportAccessInfo < TencentCloud::Common::AbstractModel
1800
+ # @param ExportId: 日志导出任务ID
1801
+ # 注意:此字段可能返回 null,表示取不到有效值。
1802
+ # @type ExportId: String
1803
+ # @param Query: 日志导出查询语句
1804
+ # 注意:此字段可能返回 null,表示取不到有效值。
1805
+ # @type Query: String
1806
+ # @param FileName: 日志导出文件名
1807
+ # 注意:此字段可能返回 null,表示取不到有效值。
1808
+ # @type FileName: String
1809
+ # @param FileSize: 日志文件大小
1810
+ # @type FileSize: Integer
1811
+ # @param Order: 日志导出时间排序
1812
+ # 注意:此字段可能返回 null,表示取不到有效值。
1813
+ # @type Order: String
1814
+ # @param Format: 日志导出格式
1815
+ # 注意:此字段可能返回 null,表示取不到有效值。
1816
+ # @type Format: String
1817
+ # @param Count: 日志导出数量
1818
+ # 注意:此字段可能返回 null,表示取不到有效值。
1819
+ # @type Count: Integer
1820
+ # @param Status: 日志下载状态。Processing:导出正在进行中,Complete:导出完成,Failed:导出失败,Expired:日志导出已过期(三天有效期)
1821
+ # @type Status: String
1822
+ # @param From: 日志导出起始时间
1823
+ # @type From: Integer
1084
1824
  # @param To: 日志导出结束时间
1085
1825
  # @type To: Integer
1086
1826
  # @param CosPath: 日志导出路径
@@ -1121,6 +1861,134 @@ module TencentCloud
1121
1861
  end
1122
1862
  end
1123
1863
 
1864
+ # 数据封装
1865
+ class IpAccessControlData < TencentCloud::Common::AbstractModel
1866
+ # @param Res: ip黑白名单
1867
+ # 注意:此字段可能返回 null,表示取不到有效值。
1868
+ # @type Res: Array
1869
+ # @param TotalCount: 计数
1870
+ # @type TotalCount: Integer
1871
+
1872
+ attr_accessor :Res, :TotalCount
1873
+
1874
+ def initialize(res=nil, totalcount=nil)
1875
+ @Res = res
1876
+ @TotalCount = totalcount
1877
+ end
1878
+
1879
+ def deserialize(params)
1880
+ unless params['Res'].nil?
1881
+ @Res = []
1882
+ params['Res'].each do |i|
1883
+ ipaccesscontrolitem_tmp = IpAccessControlItem.new
1884
+ ipaccesscontrolitem_tmp.deserialize(i)
1885
+ @Res << ipaccesscontrolitem_tmp
1886
+ end
1887
+ end
1888
+ @TotalCount = params['TotalCount']
1889
+ end
1890
+ end
1891
+
1892
+ # ip黑白名单
1893
+ class IpAccessControlItem < TencentCloud::Common::AbstractModel
1894
+ # @param ActionType: 动作
1895
+ # @type ActionType: Integer
1896
+ # @param Ip: ip
1897
+ # @type Ip: String
1898
+ # @param Note: 备注
1899
+ # @type Note: String
1900
+ # @param Source: 来源
1901
+ # @type Source: String
1902
+ # @param TsVersion: 更新时间戳
1903
+ # 注意:此字段可能返回 null,表示取不到有效值。
1904
+ # @type TsVersion: Integer
1905
+ # @param ValidTs: 有效截止时间戳
1906
+ # @type ValidTs: Integer
1907
+
1908
+ attr_accessor :ActionType, :Ip, :Note, :Source, :TsVersion, :ValidTs
1909
+
1910
+ def initialize(actiontype=nil, ip=nil, note=nil, source=nil, tsversion=nil, validts=nil)
1911
+ @ActionType = actiontype
1912
+ @Ip = ip
1913
+ @Note = note
1914
+ @Source = source
1915
+ @TsVersion = tsversion
1916
+ @ValidTs = validts
1917
+ end
1918
+
1919
+ def deserialize(params)
1920
+ @ActionType = params['ActionType']
1921
+ @Ip = params['Ip']
1922
+ @Note = params['Note']
1923
+ @Source = params['Source']
1924
+ @TsVersion = params['TsVersion']
1925
+ @ValidTs = params['ValidTs']
1926
+ end
1927
+ end
1928
+
1929
+ # ip封堵状态数据
1930
+ class IpHitItem < TencentCloud::Common::AbstractModel
1931
+ # @param Action: 动作
1932
+ # @type Action: Integer
1933
+ # @param Category: 类别
1934
+ # @type Category: String
1935
+ # @param Ip: ip
1936
+ # @type Ip: String
1937
+ # @param Name: 规则名称
1938
+ # @type Name: String
1939
+ # @param TsVersion: 时间戳
1940
+ # @type TsVersion: Integer
1941
+ # @param ValidTs: 有效截止时间戳
1942
+ # @type ValidTs: Integer
1943
+
1944
+ attr_accessor :Action, :Category, :Ip, :Name, :TsVersion, :ValidTs
1945
+
1946
+ def initialize(action=nil, category=nil, ip=nil, name=nil, tsversion=nil, validts=nil)
1947
+ @Action = action
1948
+ @Category = category
1949
+ @Ip = ip
1950
+ @Name = name
1951
+ @TsVersion = tsversion
1952
+ @ValidTs = validts
1953
+ end
1954
+
1955
+ def deserialize(params)
1956
+ @Action = params['Action']
1957
+ @Category = params['Category']
1958
+ @Ip = params['Ip']
1959
+ @Name = params['Name']
1960
+ @TsVersion = params['TsVersion']
1961
+ @ValidTs = params['ValidTs']
1962
+ end
1963
+ end
1964
+
1965
+ # 封装参数
1966
+ class IpHitItemsData < TencentCloud::Common::AbstractModel
1967
+ # @param Res: 数组封装
1968
+ # @type Res: Array
1969
+ # @param TotalCount: 总数目
1970
+ # @type TotalCount: Integer
1971
+
1972
+ attr_accessor :Res, :TotalCount
1973
+
1974
+ def initialize(res=nil, totalcount=nil)
1975
+ @Res = res
1976
+ @TotalCount = totalcount
1977
+ end
1978
+
1979
+ def deserialize(params)
1980
+ unless params['Res'].nil?
1981
+ @Res = []
1982
+ params['Res'].each do |i|
1983
+ iphititem_tmp = IpHitItem.new
1984
+ iphititem_tmp.deserialize(i)
1985
+ @Res << iphititem_tmp
1986
+ end
1987
+ end
1988
+ @TotalCount = params['TotalCount']
1989
+ end
1990
+ end
1991
+
1124
1992
  # ModifyAccessPeriod请求参数结构体
1125
1993
  class ModifyAccessPeriodRequest < TencentCloud::Common::AbstractModel
1126
1994
  # @param Period: 访问日志保存期限,范围为[1, 30]
@@ -1208,6 +2076,229 @@ module TencentCloud
1208
2076
  end
1209
2077
  end
1210
2078
 
2079
+ # ModifyDomainWhiteRule请求参数结构体
2080
+ class ModifyDomainWhiteRuleRequest < TencentCloud::Common::AbstractModel
2081
+ # @param Domain: 需要更改的规则的域名
2082
+ # @type Domain: String
2083
+ # @param Id: 白名单id
2084
+ # @type Id: Integer
2085
+ # @param Rules: 规则的id列表
2086
+ # @type Rules: Array
2087
+ # @param Url: 规则匹配路径
2088
+ # @type Url: String
2089
+ # @param Function: 规则匹配方法
2090
+ # @type Function: String
2091
+ # @param Status: 规则的开关状态
2092
+ # @type Status: Integer
2093
+
2094
+ attr_accessor :Domain, :Id, :Rules, :Url, :Function, :Status
2095
+
2096
+ def initialize(domain=nil, id=nil, rules=nil, url=nil, function=nil, status=nil)
2097
+ @Domain = domain
2098
+ @Id = id
2099
+ @Rules = rules
2100
+ @Url = url
2101
+ @Function = function
2102
+ @Status = status
2103
+ end
2104
+
2105
+ def deserialize(params)
2106
+ @Domain = params['Domain']
2107
+ @Id = params['Id']
2108
+ @Rules = params['Rules']
2109
+ @Url = params['Url']
2110
+ @Function = params['Function']
2111
+ @Status = params['Status']
2112
+ end
2113
+ end
2114
+
2115
+ # ModifyDomainWhiteRule返回参数结构体
2116
+ class ModifyDomainWhiteRuleResponse < TencentCloud::Common::AbstractModel
2117
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2118
+ # @type RequestId: String
2119
+
2120
+ attr_accessor :RequestId
2121
+
2122
+ def initialize(requestid=nil)
2123
+ @RequestId = requestid
2124
+ end
2125
+
2126
+ def deserialize(params)
2127
+ @RequestId = params['RequestId']
2128
+ end
2129
+ end
2130
+
2131
+ # ModifyWafAutoDenyRules请求参数结构体
2132
+ class ModifyWafAutoDenyRulesRequest < TencentCloud::Common::AbstractModel
2133
+ # @param Domain: 域名
2134
+ # @type Domain: String
2135
+ # @param AttackThreshold: 攻击次数阈值
2136
+ # @type AttackThreshold: Integer
2137
+ # @param TimeThreshold: 攻击时间阈值
2138
+ # @type TimeThreshold: Integer
2139
+ # @param DenyTimeThreshold: 自动封禁时间
2140
+ # @type DenyTimeThreshold: Integer
2141
+ # @param DefenseStatus: 自动封禁状态
2142
+ # @type DefenseStatus: Integer
2143
+
2144
+ attr_accessor :Domain, :AttackThreshold, :TimeThreshold, :DenyTimeThreshold, :DefenseStatus
2145
+
2146
+ def initialize(domain=nil, attackthreshold=nil, timethreshold=nil, denytimethreshold=nil, defensestatus=nil)
2147
+ @Domain = domain
2148
+ @AttackThreshold = attackthreshold
2149
+ @TimeThreshold = timethreshold
2150
+ @DenyTimeThreshold = denytimethreshold
2151
+ @DefenseStatus = defensestatus
2152
+ end
2153
+
2154
+ def deserialize(params)
2155
+ @Domain = params['Domain']
2156
+ @AttackThreshold = params['AttackThreshold']
2157
+ @TimeThreshold = params['TimeThreshold']
2158
+ @DenyTimeThreshold = params['DenyTimeThreshold']
2159
+ @DefenseStatus = params['DefenseStatus']
2160
+ end
2161
+ end
2162
+
2163
+ # ModifyWafAutoDenyRules返回参数结构体
2164
+ class ModifyWafAutoDenyRulesResponse < TencentCloud::Common::AbstractModel
2165
+ # @param Success: 成功的状态码,需要JSON解码后再使用,返回的格式是{"域名":"状态"},成功的状态码为Success,其它的为失败的状态码(yunapi定义的错误码)
2166
+ # @type Success: :class:`Tencentcloud::Waf.v20180125.models.ResponseCode`
2167
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2168
+ # @type RequestId: String
2169
+
2170
+ attr_accessor :Success, :RequestId
2171
+
2172
+ def initialize(success=nil, requestid=nil)
2173
+ @Success = success
2174
+ @RequestId = requestid
2175
+ end
2176
+
2177
+ def deserialize(params)
2178
+ unless params['Success'].nil?
2179
+ @Success = ResponseCode.new
2180
+ @Success.deserialize(params['Success'])
2181
+ end
2182
+ @RequestId = params['RequestId']
2183
+ end
2184
+ end
2185
+
2186
+ # ModifyWafAutoDenyStatus请求参数结构体
2187
+ class ModifyWafAutoDenyStatusRequest < TencentCloud::Common::AbstractModel
2188
+ # @param WafAutoDenyDetails: WAF 自动封禁配置项
2189
+ # @type WafAutoDenyDetails: :class:`Tencentcloud::Waf.v20180125.models.AutoDenyDetail`
2190
+
2191
+ attr_accessor :WafAutoDenyDetails
2192
+
2193
+ def initialize(wafautodenydetails=nil)
2194
+ @WafAutoDenyDetails = wafautodenydetails
2195
+ end
2196
+
2197
+ def deserialize(params)
2198
+ unless params['WafAutoDenyDetails'].nil?
2199
+ @WafAutoDenyDetails = AutoDenyDetail.new
2200
+ @WafAutoDenyDetails.deserialize(params['WafAutoDenyDetails'])
2201
+ end
2202
+ end
2203
+ end
2204
+
2205
+ # ModifyWafAutoDenyStatus返回参数结构体
2206
+ class ModifyWafAutoDenyStatusResponse < TencentCloud::Common::AbstractModel
2207
+ # @param WafAutoDenyDetails: WAF 自动封禁配置项
2208
+ # @type WafAutoDenyDetails: :class:`Tencentcloud::Waf.v20180125.models.AutoDenyDetail`
2209
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2210
+ # @type RequestId: String
2211
+
2212
+ attr_accessor :WafAutoDenyDetails, :RequestId
2213
+
2214
+ def initialize(wafautodenydetails=nil, requestid=nil)
2215
+ @WafAutoDenyDetails = wafautodenydetails
2216
+ @RequestId = requestid
2217
+ end
2218
+
2219
+ def deserialize(params)
2220
+ unless params['WafAutoDenyDetails'].nil?
2221
+ @WafAutoDenyDetails = AutoDenyDetail.new
2222
+ @WafAutoDenyDetails.deserialize(params['WafAutoDenyDetails'])
2223
+ end
2224
+ @RequestId = params['RequestId']
2225
+ end
2226
+ end
2227
+
2228
+ # ModifyWafThreatenIntelligence请求参数结构体
2229
+ class ModifyWafThreatenIntelligenceRequest < TencentCloud::Common::AbstractModel
2230
+ # @param WafThreatenIntelligenceDetails: 配置WAF威胁情报封禁模块详情
2231
+ # @type WafThreatenIntelligenceDetails: :class:`Tencentcloud::Waf.v20180125.models.WafThreatenIntelligenceDetails`
2232
+
2233
+ attr_accessor :WafThreatenIntelligenceDetails
2234
+
2235
+ def initialize(wafthreatenintelligencedetails=nil)
2236
+ @WafThreatenIntelligenceDetails = wafthreatenintelligencedetails
2237
+ end
2238
+
2239
+ def deserialize(params)
2240
+ unless params['WafThreatenIntelligenceDetails'].nil?
2241
+ @WafThreatenIntelligenceDetails = WafThreatenIntelligenceDetails.new
2242
+ @WafThreatenIntelligenceDetails.deserialize(params['WafThreatenIntelligenceDetails'])
2243
+ end
2244
+ end
2245
+ end
2246
+
2247
+ # ModifyWafThreatenIntelligence返回参数结构体
2248
+ class ModifyWafThreatenIntelligenceResponse < TencentCloud::Common::AbstractModel
2249
+ # @param WafThreatenIntelligenceDetails: 当前WAF威胁情报封禁模块详情
2250
+ # @type WafThreatenIntelligenceDetails: :class:`Tencentcloud::Waf.v20180125.models.WafThreatenIntelligenceDetails`
2251
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2252
+ # @type RequestId: String
2253
+
2254
+ attr_accessor :WafThreatenIntelligenceDetails, :RequestId
2255
+
2256
+ def initialize(wafthreatenintelligencedetails=nil, requestid=nil)
2257
+ @WafThreatenIntelligenceDetails = wafthreatenintelligencedetails
2258
+ @RequestId = requestid
2259
+ end
2260
+
2261
+ def deserialize(params)
2262
+ unless params['WafThreatenIntelligenceDetails'].nil?
2263
+ @WafThreatenIntelligenceDetails = WafThreatenIntelligenceDetails.new
2264
+ @WafThreatenIntelligenceDetails.deserialize(params['WafThreatenIntelligenceDetails'])
2265
+ end
2266
+ @RequestId = params['RequestId']
2267
+ end
2268
+ end
2269
+
2270
+ # 防护域名端口配置信息
2271
+ class PortItem < TencentCloud::Common::AbstractModel
2272
+ # @param Port: 监听端口配置
2273
+ # @type Port: String
2274
+ # @param Protocol: 与Port一一对应,表示端口对应的协议
2275
+ # @type Protocol: String
2276
+ # @param UpstreamPort: 与Port一一对应, 表示回源端口
2277
+ # @type UpstreamPort: String
2278
+ # @param UpstreamProtocol: 与Port一一对应, 表示回源协议
2279
+ # @type UpstreamProtocol: String
2280
+ # @param NginxServerId: Nginx的服务器ID
2281
+ # @type NginxServerId: String
2282
+
2283
+ attr_accessor :Port, :Protocol, :UpstreamPort, :UpstreamProtocol, :NginxServerId
2284
+
2285
+ def initialize(port=nil, protocol=nil, upstreamport=nil, upstreamprotocol=nil, nginxserverid=nil)
2286
+ @Port = port
2287
+ @Protocol = protocol
2288
+ @UpstreamPort = upstreamport
2289
+ @UpstreamProtocol = upstreamprotocol
2290
+ @NginxServerId = nginxserverid
2291
+ end
2292
+
2293
+ def deserialize(params)
2294
+ @Port = params['Port']
2295
+ @Protocol = params['Protocol']
2296
+ @UpstreamPort = params['UpstreamPort']
2297
+ @UpstreamProtocol = params['UpstreamProtocol']
2298
+ @NginxServerId = params['NginxServerId']
2299
+ end
2300
+ end
2301
+
1211
2302
  # 响应体的返回码
1212
2303
  class ResponseCode < TencentCloud::Common::AbstractModel
1213
2304
  # @param Code: 如果成功则返回Success,失败则返回yunapi定义的错误码
@@ -1228,6 +2319,42 @@ module TencentCloud
1228
2319
  end
1229
2320
  end
1230
2321
 
2322
+ # 规则白名单
2323
+ class RuleList < TencentCloud::Common::AbstractModel
2324
+ # @param Id: 规则Id
2325
+ # @type Id: Integer
2326
+ # @param Rules: 规则列表的id
2327
+ # @type Rules: Array
2328
+ # @param Url: 请求url
2329
+ # @type Url: String
2330
+ # @param Function: 请求的方法
2331
+ # @type Function: String
2332
+ # @param Time: 时间戳
2333
+ # @type Time: String
2334
+ # @param Status: 开关状态
2335
+ # @type Status: Integer
2336
+
2337
+ attr_accessor :Id, :Rules, :Url, :Function, :Time, :Status
2338
+
2339
+ def initialize(id=nil, rules=nil, url=nil, function=nil, time=nil, status=nil)
2340
+ @Id = id
2341
+ @Rules = rules
2342
+ @Url = url
2343
+ @Function = function
2344
+ @Time = time
2345
+ @Status = status
2346
+ end
2347
+
2348
+ def deserialize(params)
2349
+ @Id = params['Id']
2350
+ @Rules = params['Rules']
2351
+ @Url = params['Url']
2352
+ @Function = params['Function']
2353
+ @Time = params['Time']
2354
+ @Status = params['Status']
2355
+ end
2356
+ end
2357
+
1231
2358
  # SearchAccessLog请求参数结构体
1232
2359
  class SearchAccessLogRequest < TencentCloud::Common::AbstractModel
1233
2360
  # @param TopicId: 客户要查询的日志主题ID,每个客户都有对应的一个主题
@@ -1356,6 +2483,81 @@ module TencentCloud
1356
2483
  end
1357
2484
  end
1358
2485
 
2486
+ # UpsertIpAccessControl请求参数结构体
2487
+ class UpsertIpAccessControlRequest < TencentCloud::Common::AbstractModel
2488
+ # @param Domain: 域名
2489
+ # @type Domain: String
2490
+ # @param Items: ip 参数列表,json数组由ip,source,note,action,valid_ts组成。ip对应配置的ip地址,source固定为custom值,note为注释,action值42为黑名单,40为白名单,valid_ts为有效日期,值为秒级时间戳
2491
+ # @type Items: Array
2492
+ # @param Edition: clb-waf或者sparta-waf
2493
+ # @type Edition: String
2494
+
2495
+ attr_accessor :Domain, :Items, :Edition
2496
+
2497
+ def initialize(domain=nil, items=nil, edition=nil)
2498
+ @Domain = domain
2499
+ @Items = items
2500
+ @Edition = edition
2501
+ end
2502
+
2503
+ def deserialize(params)
2504
+ @Domain = params['Domain']
2505
+ @Items = params['Items']
2506
+ @Edition = params['Edition']
2507
+ end
2508
+ end
2509
+
2510
+ # UpsertIpAccessControl返回参数结构体
2511
+ class UpsertIpAccessControlResponse < TencentCloud::Common::AbstractModel
2512
+ # @param FailedItems: 添加或修改失败的条目
2513
+ # 注意:此字段可能返回 null,表示取不到有效值。
2514
+ # @type FailedItems: String
2515
+ # @param FailedCount: 添加或修改失败的数目
2516
+ # 注意:此字段可能返回 null,表示取不到有效值。
2517
+ # @type FailedCount: Integer
2518
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2519
+ # @type RequestId: String
2520
+
2521
+ attr_accessor :FailedItems, :FailedCount, :RequestId
2522
+
2523
+ def initialize(faileditems=nil, failedcount=nil, requestid=nil)
2524
+ @FailedItems = faileditems
2525
+ @FailedCount = failedcount
2526
+ @RequestId = requestid
2527
+ end
2528
+
2529
+ def deserialize(params)
2530
+ @FailedItems = params['FailedItems']
2531
+ @FailedCount = params['FailedCount']
2532
+ @RequestId = params['RequestId']
2533
+ end
2534
+ end
2535
+
2536
+ # Waf 威胁情报封禁模块配置详情
2537
+ class WafThreatenIntelligenceDetails < TencentCloud::Common::AbstractModel
2538
+ # @param DefenseStatus: 封禁模组启用状态
2539
+ # @type DefenseStatus: Integer
2540
+ # @param Tags: 封禁属性标签
2541
+ # 注意:此字段可能返回 null,表示取不到有效值。
2542
+ # @type Tags: Array
2543
+ # @param LastUpdateTime: 最后更新时间
2544
+ # @type LastUpdateTime: String
2545
+
2546
+ attr_accessor :DefenseStatus, :Tags, :LastUpdateTime
2547
+
2548
+ def initialize(defensestatus=nil, tags=nil, lastupdatetime=nil)
2549
+ @DefenseStatus = defensestatus
2550
+ @Tags = tags
2551
+ @LastUpdateTime = lastupdatetime
2552
+ end
2553
+
2554
+ def deserialize(params)
2555
+ @DefenseStatus = params['DefenseStatus']
2556
+ @Tags = params['Tags']
2557
+ @LastUpdateTime = params['LastUpdateTime']
2558
+ end
2559
+ end
2560
+
1359
2561
  end
1360
2562
  end
1361
2563
  end