From e02629bb7276481b00dfe45072381fb4c692260c Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Thu, 4 Jan 2024 15:55:20 +0800 Subject: [PATCH 1/3] fix/waf --- go.mod | 4 +- go.sum | 4 + tencentcloud/services/waf/extension_waf.go | 2 + .../waf/resource_tc_waf_clb_domain.go | 8 +- .../waf/resource_tc_waf_saas_domain.go | 10 +- .../waf/resource_tc_waf_saas_domain_test.go | 4 +- .../tencentcloud/common/http/request.go | 2 +- .../tencentcloud/waf/v20180125/client.go | 12 ++ .../tencentcloud/waf/v20180125/errors.go | 3 + .../tencentcloud/waf/v20180125/models.go | 132 +++++++++++++----- vendor/modules.txt | 4 +- 11 files changed, 140 insertions(+), 45 deletions(-) diff --git a/go.mod b/go.mod index 852df68dab..0e40438d89 100644 --- a/go.mod +++ b/go.mod @@ -46,7 +46,7 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.693 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.544 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.711 - github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.829 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.833 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.624 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.692 @@ -97,7 +97,7 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tsf v1.0.674 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.779 - github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.802 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.833 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199 github.com/tencentyun/cos-go-sdk-v5 v0.7.42-0.20230629101357-7edd77448a0f diff --git a/go.sum b/go.sum index 34e920cfd9..090264f04c 100644 --- a/go.sum +++ b/go.sum @@ -935,6 +935,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.825 h1:ijG2 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.825/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.829 h1:5Wx+X/EmjEU6T9WHjc/vBPvW97OUe3Bi8BGdQBD8pJM= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.829/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.833 h1:EE3PbnS+BiCjPcfbf2Tel03YglInffxV+mIbmzoFEag= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.833/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.624 h1:nEZqsoqt1pEoaP9JjkHQy3/H00suCfzlHW1qOm2nYD8= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.624/go.mod h1:+TXSVyeKwt1IhZRqKPbTREteBcP+K07Q846/ilNzLWA= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762 h1:2egy69SP/wPsmnfozcQVZ6tUY6F6N/TpEe/7xtXrc/8= @@ -1047,6 +1049,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.779 h1:4NpjQiF github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.779/go.mod h1:kYBG2jgpjL7CuhYM+K1fkEtbWvNXrtt7NSLwXVCqmKA= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.802 h1:ezxDJsbS0shcpDmyyxbPS3hxp92r9lujsj1/vr5tZXk= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.802/go.mod h1:yX7LqAVM/vOt7bGz4AaFEQEJVfp0uJ5W6eEUCzsMXOI= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.833 h1:avaBlZ+Qqv7bfMg/u0jlRsbEBbE18CfqKWbfGc84PLg= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.833/go.mod h1:fUWG217b//46Oa3VXxC5mgeYeewVAbF+lc81uET89EM= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792 h1:NLgKNOIHWa38AmW7dyfI9Jlcp2Kr9VRD94f48pPNmxM= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792/go.mod h1:Xz6vPV3gHlzPwtEcmWdWO1EUXJDgn2p7UMCXbJiVioQ= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199 h1:hMBLtiJPnZ9GvA677cTB6ELBR6B68wCR2QY1sNoGQc4= diff --git a/tencentcloud/services/waf/extension_waf.go b/tencentcloud/services/waf/extension_waf.go index 384164743f..86bc87d4bd 100644 --- a/tencentcloud/services/waf/extension_waf.go +++ b/tencentcloud/services/waf/extension_waf.go @@ -103,6 +103,8 @@ var CLS_STATUS = []int{ const ( BOT_STATUS_0 = 0 BOT_STATUS_1 = 1 + BOT_STATUS_2 = 2 + BOT_STATUS_3 = 3 ) var BOT_STATUS = []int{ diff --git a/tencentcloud/services/waf/resource_tc_waf_clb_domain.go b/tencentcloud/services/waf/resource_tc_waf_clb_domain.go index 33fddd0a14..90726588fb 100644 --- a/tencentcloud/services/waf/resource_tc_waf_clb_domain.go +++ b/tencentcloud/services/waf/resource_tc_waf_clb_domain.go @@ -658,7 +658,13 @@ func resourceTencentCloudWafClbDomainRead(d *schema.ResourceData, meta interface } if domainInfo.BotStatus != nil { - _ = d.Set("bot_status", domainInfo.BotStatus) + if *domainInfo.BotStatus == BOT_STATUS_0 || *domainInfo.BotStatus == BOT_STATUS_1 { + _ = d.Set("bot_status", BOT_STATUS_0) + } else if *domainInfo.BotStatus == BOT_STATUS_2 || *domainInfo.BotStatus == BOT_STATUS_3 { + _ = d.Set("bot_status", BOT_STATUS_1) + } else { + _ = d.Set("bot_status", domainInfo.BotStatus) + } } if domainInfo.ApiStatus != nil { diff --git a/tencentcloud/services/waf/resource_tc_waf_saas_domain.go b/tencentcloud/services/waf/resource_tc_waf_saas_domain.go index 3b27d49493..4a99077305 100644 --- a/tencentcloud/services/waf/resource_tc_waf_saas_domain.go +++ b/tencentcloud/services/waf/resource_tc_waf_saas_domain.go @@ -232,7 +232,7 @@ func ResourceTencentCloudWafSaasDomain() *schema.Resource { Type: schema.TypeInt, Default: XFF_RESET_0, ValidateFunc: tccommon.ValidateAllowedIntValue(XFF_RESET_STATUS), - Description: "0:disable xff reset; 1:ensable xff reset.", + Description: "0:disable xff reset; 1:enable xff reset.", }, "bot_status": { Type: schema.TypeInt, @@ -963,7 +963,13 @@ func resourceTencentCloudWafSaasDomainRead(d *schema.ResourceData, meta interfac } if domainInfo.BotStatus != nil { - _ = d.Set("bot_status", domainInfo.BotStatus) + if *domainInfo.BotStatus == BOT_STATUS_0 || *domainInfo.BotStatus == BOT_STATUS_1 { + _ = d.Set("bot_status", BOT_STATUS_0) + } else if *domainInfo.BotStatus == BOT_STATUS_2 || *domainInfo.BotStatus == BOT_STATUS_3 { + _ = d.Set("bot_status", BOT_STATUS_1) + } else { + _ = d.Set("bot_status", domainInfo.BotStatus) + } } if domainInfo.ApiStatus != nil { diff --git a/tencentcloud/services/waf/resource_tc_waf_saas_domain_test.go b/tencentcloud/services/waf/resource_tc_waf_saas_domain_test.go index 92035ea621..048655f364 100644 --- a/tencentcloud/services/waf/resource_tc_waf_saas_domain_test.go +++ b/tencentcloud/services/waf/resource_tc_waf_saas_domain_test.go @@ -86,7 +86,7 @@ resource "tencentcloud_waf_saas_domain" "example" { proxy_send_timeout = 500 sni_type = 3 sni_host = "3.3.3.3" - xff_reset = 1 + xff_reset = 0 bot_status = 1 api_safe_status = 1 } @@ -101,7 +101,7 @@ resource "tencentcloud_waf_saas_domain" "example" { ssl_id = "3a6B5y8v" load_balance = "2" https_rewrite = 0 - is_http2 = 0 + is_http2 = 0 upstream_scheme = "https" src_list = [ "1.1.1.1", diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go index 96d09ec026..228ffd24d4 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go @@ -265,7 +265,7 @@ func CompleteCommonParams(request Request, region string, requestClient string) params["Action"] = request.GetAction() params["Timestamp"] = strconv.FormatInt(time.Now().Unix(), 10) params["Nonce"] = strconv.Itoa(rand.Int()) - params["RequestClient"] = "SDK_GO_1.0.829" + params["RequestClient"] = "SDK_GO_1.0.833" if requestClient != "" { params["RequestClient"] += ": " + requestClient } diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/client.go index f7fc0ac017..a78f8853de 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/client.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/client.go @@ -443,6 +443,7 @@ func NewAddSpartaProtectionResponse() (response *AddSpartaProtectionResponse) { // // 可能返回的错误码: // FAILEDOPERATION = "FailedOperation" +// FAILEDOPERATION_REDISOPERATIONFAILED = "FailedOperation.RedisOperationFailed" // INTERNALERROR = "InternalError" // INTERNALERROR_ASYNCHRONOUSCALLFAILED = "InternalError.AsynchronousCallFailed" // INVALIDPARAMETER = "InvalidParameter" @@ -475,6 +476,7 @@ func (c *Client) AddSpartaProtection(request *AddSpartaProtectionRequest) (respo // // 可能返回的错误码: // FAILEDOPERATION = "FailedOperation" +// FAILEDOPERATION_REDISOPERATIONFAILED = "FailedOperation.RedisOperationFailed" // INTERNALERROR = "InternalError" // INTERNALERROR_ASYNCHRONOUSCALLFAILED = "InternalError.AsynchronousCallFailed" // INVALIDPARAMETER = "InvalidParameter" @@ -3999,6 +4001,7 @@ func NewDescribeModuleStatusResponse() (response *DescribeModuleStatusResponse) // 查询各个waf基础安全模块的开关状态,看每个模块是否开启 // // 可能返回的错误码: +// FAILEDOPERATION_MONGOOPERATIONFAILED = "FailedOperation.MongoOperationFailed" // INTERNALERROR = "InternalError" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) DescribeModuleStatus(request *DescribeModuleStatusRequest) (response *DescribeModuleStatusResponse, err error) { @@ -4009,6 +4012,7 @@ func (c *Client) DescribeModuleStatus(request *DescribeModuleStatusRequest) (res // 查询各个waf基础安全模块的开关状态,看每个模块是否开启 // // 可能返回的错误码: +// FAILEDOPERATION_MONGOOPERATIONFAILED = "FailedOperation.MongoOperationFailed" // INTERNALERROR = "InternalError" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) DescribeModuleStatusWithContext(ctx context.Context, request *DescribeModuleStatusRequest) (response *DescribeModuleStatusResponse, err error) { @@ -4050,6 +4054,7 @@ func NewDescribeObjectsResponse() (response *DescribeObjectsResponse) { // 查看防护对象列表 // // 可能返回的错误码: +// FAILEDOPERATION_MONGOOPERATIONFAILED = "FailedOperation.MongoOperationFailed" // INTERNALERROR = "InternalError" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) DescribeObjects(request *DescribeObjectsRequest) (response *DescribeObjectsResponse, err error) { @@ -4060,6 +4065,7 @@ func (c *Client) DescribeObjects(request *DescribeObjectsRequest) (response *Des // 查看防护对象列表 // // 可能返回的错误码: +// FAILEDOPERATION_MONGOOPERATIONFAILED = "FailedOperation.MongoOperationFailed" // INTERNALERROR = "InternalError" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) DescribeObjectsWithContext(ctx context.Context, request *DescribeObjectsRequest) (response *DescribeObjectsResponse, err error) { @@ -6295,6 +6301,7 @@ func NewModifyBotStatusResponse() (response *ModifyBotStatusResponse) { // 可能返回的错误码: // AUTHFAILURE_ERRCODENOPURCHASED = "AuthFailure.ErrCodeNoPurchased" // INTERNALERROR = "InternalError" +// UNSUPPORTEDOPERATION_INVALIDREQUEST = "UnsupportedOperation.InvalidRequest" func (c *Client) ModifyBotStatus(request *ModifyBotStatusRequest) (response *ModifyBotStatusResponse, err error) { return c.ModifyBotStatusWithContext(context.Background(), request) } @@ -6305,6 +6312,7 @@ func (c *Client) ModifyBotStatus(request *ModifyBotStatusRequest) (response *Mod // 可能返回的错误码: // AUTHFAILURE_ERRCODENOPURCHASED = "AuthFailure.ErrCodeNoPurchased" // INTERNALERROR = "InternalError" +// UNSUPPORTEDOPERATION_INVALIDREQUEST = "UnsupportedOperation.InvalidRequest" func (c *Client) ModifyBotStatusWithContext(ctx context.Context, request *ModifyBotStatusRequest) (response *ModifyBotStatusResponse, err error) { if request == nil { request = NewModifyBotStatusRequest() @@ -8582,6 +8590,7 @@ func NewUpsertCCRuleResponse() (response *UpsertCCRuleResponse) { // // 可能返回的错误码: // INTERNALERROR = "InternalError" +// LIMITEXCEEDED_SPECIFICATIONERR = "LimitExceeded.SpecificationErr" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) UpsertCCRule(request *UpsertCCRuleRequest) (response *UpsertCCRuleResponse, err error) { return c.UpsertCCRuleWithContext(context.Background(), request) @@ -8592,6 +8601,7 @@ func (c *Client) UpsertCCRule(request *UpsertCCRuleRequest) (response *UpsertCCR // // 可能返回的错误码: // INTERNALERROR = "InternalError" +// LIMITEXCEEDED_SPECIFICATIONERR = "LimitExceeded.SpecificationErr" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) UpsertCCRuleWithContext(ctx context.Context, request *UpsertCCRuleRequest) (response *UpsertCCRuleResponse, err error) { if request == nil { @@ -8691,6 +8701,7 @@ func NewUpsertSessionResponse() (response *UpsertSessionResponse) { // Waf 会话定义 Upsert接口 // // 可能返回的错误码: +// FAILEDOPERATION = "FailedOperation" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) UpsertSession(request *UpsertSessionRequest) (response *UpsertSessionResponse, err error) { return c.UpsertSessionWithContext(context.Background(), request) @@ -8700,6 +8711,7 @@ func (c *Client) UpsertSession(request *UpsertSessionRequest) (response *UpsertS // Waf 会话定义 Upsert接口 // // 可能返回的错误码: +// FAILEDOPERATION = "FailedOperation" // UNSUPPORTEDOPERATION = "UnsupportedOperation" func (c *Client) UpsertSessionWithContext(ctx context.Context, request *UpsertSessionRequest) (response *UpsertSessionResponse, err error) { if request == nil { diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/errors.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/errors.go index c3a830490e..44a6ef6b00 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/errors.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/errors.go @@ -38,6 +38,9 @@ const ( // 操作CH数据库失败 FAILEDOPERATION_CLICKHOUSEOPERATIONFAILED = "FailedOperation.ClickHouseOperationFailed" + // 操作Mongo数据库失败 + FAILEDOPERATION_MONGOOPERATIONFAILED = "FailedOperation.MongoOperationFailed" + // 操作Mysql数据库失败 FAILEDOPERATION_MYSQLDBOPERATIONFAILED = "FailedOperation.MysqlDBOperationFailed" diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/models.go index 9ea76016a2..4b20901074 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/models.go @@ -830,10 +830,10 @@ type AddSpartaProtectionRequestParams struct { TLSVersion *int64 `json:"TLSVersion,omitnil" name:"TLSVersion"` // 加密套件模板。 - // 0:不支持选择,使用默认模版 - // 1:通用型模版 - // 2:安全型模版 - // 3:自定义模版 + // 0:不支持选择,使用默认模板 + // 1:通用型模板 + // 2:安全型模板 + // 3:自定义模板 CipherTemplate *int64 `json:"CipherTemplate,omitnil" name:"CipherTemplate"` // 自定义的加密套件列表。CipherTemplate为3时需要填此字段,表示自定义的加密套件,值通过DescribeCiphersDetail接口获取。 @@ -978,10 +978,10 @@ type AddSpartaProtectionRequest struct { TLSVersion *int64 `json:"TLSVersion,omitnil" name:"TLSVersion"` // 加密套件模板。 - // 0:不支持选择,使用默认模版 - // 1:通用型模版 - // 2:安全型模版 - // 3:自定义模版 + // 0:不支持选择,使用默认模板 + // 1:通用型模板 + // 2:安全型模板 + // 3:自定义模板 CipherTemplate *int64 `json:"CipherTemplate,omitnil" name:"CipherTemplate"` // 自定义的加密套件列表。CipherTemplate为3时需要填此字段,表示自定义的加密套件,值通过DescribeCiphersDetail接口获取。 @@ -8700,55 +8700,65 @@ type HybridPkg struct { } type InstanceInfo struct { - // id + // 实例唯一ID InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` - // Name + // 实例名称 InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` - // 资源id + // 实例对应资源ID,计费使用 ResourceIds *string `json:"ResourceIds,omitnil" name:"ResourceIds"` - // 地域 + // 实例所属地域 Region *string `json:"Region,omitnil" name:"Region"` // 付费模式 PayMode *uint64 `json:"PayMode,omitnil" name:"PayMode"` - // 自动续费 + // 自动续费标识。 + // 0:关闭 + // 1:开启 RenewFlag *uint64 `json:"RenewFlag,omitnil" name:"RenewFlag"` - // 弹性计费 + // 弹性计费开关。 + // 0:关闭 + // 1:开启 Mode *uint64 `json:"Mode,omitnil" name:"Mode"` - // 套餐版本 + // 实例套餐版本。 + // 101:小微版 + // 102:超轻版 + // 2:高级版 + // 3:企业版 + // 4:旗舰版 + // 6:独享版 Level *uint64 `json:"Level,omitnil" name:"Level"` - // 过期时间 + // 实例过期时间 ValidTime *string `json:"ValidTime,omitnil" name:"ValidTime"` - // 开始时间 + // 实例开始时间 BeginTime *string `json:"BeginTime,omitnil" name:"BeginTime"` - // 已用 + // 已配置域名个数 DomainCount *uint64 `json:"DomainCount,omitnil" name:"DomainCount"` - // 上限 + // 域名数量上限 SubDomainLimit *uint64 `json:"SubDomainLimit,omitnil" name:"SubDomainLimit"` - // 已用 + // 已配置主域名个数 MainDomainCount *uint64 `json:"MainDomainCount,omitnil" name:"MainDomainCount"` - // 上限 + // 主域名数量上限 MainDomainLimit *uint64 `json:"MainDomainLimit,omitnil" name:"MainDomainLimit"` - // 峰值 + // 实例30天内QPS峰值 MaxQPS *uint64 `json:"MaxQPS,omitnil" name:"MaxQPS"` - // qps套餐 + // qps扩展包信息 QPS *QPSPackageNew `json:"QPS,omitnil" name:"QPS"` - // 域名套餐 + // 域名扩展包信息 DomainPkg *DomainPackageNew `json:"DomainPkg,omitnil" name:"DomainPkg"` // 用户appid @@ -8796,7 +8806,7 @@ type InstanceInfo struct { // 注意:此字段可能返回 null,表示取不到有效值。 Status *uint64 `json:"Status,omitnil" name:"Status"` - // 实例沙箱值 + // 实例沙箱qps值 // 注意:此字段可能返回 null,表示取不到有效值。 SandboxQps *uint64 `json:"SandboxQps,omitnil" name:"SandboxQps"` @@ -8815,6 +8825,22 @@ type InstanceInfo struct { // API安全资源包 // 注意:此字段可能返回 null,表示取不到有效值。 ApiPkg *ApiPkg `json:"ApiPkg,omitnil" name:"ApiPkg"` + + // 小程序安全加速包 + // 注意:此字段可能返回 null,表示取不到有效值。 + MiniPkg *MiniPkg `json:"MiniPkg,omitnil" name:"MiniPkg"` + + // 小程序qps规格 + // 注意:此字段可能返回 null,表示取不到有效值。 + MiniQpsStandard *uint64 `json:"MiniQpsStandard,omitnil" name:"MiniQpsStandard"` + + // 小程序qps峰值 + // 注意:此字段可能返回 null,表示取不到有效值。 + MiniMaxQPS *uint64 `json:"MiniMaxQPS,omitnil" name:"MiniMaxQPS"` + + // 最近一次超量时间 + // 注意:此字段可能返回 null,表示取不到有效值。 + LastQpsExceedTime *string `json:"LastQpsExceedTime,omitnil" name:"LastQpsExceedTime"` } type IpAccessControlData struct { @@ -9032,6 +9058,40 @@ type MajorEventsPkg struct { HWState *int64 `json:"HWState,omitnil" name:"HWState"` } +type MiniPkg struct { + // 资源id + // 注意:此字段可能返回 null,表示取不到有效值。 + ResourceIds *string `json:"ResourceIds,omitnil" name:"ResourceIds"` + + // 状态 + // 注意:此字段可能返回 null,表示取不到有效值。 + Status *int64 `json:"Status,omitnil" name:"Status"` + + // 地域 + // 注意:此字段可能返回 null,表示取不到有效值。 + Region *int64 `json:"Region,omitnil" name:"Region"` + + // 开始时间 + // 注意:此字段可能返回 null,表示取不到有效值。 + BeginTime *string `json:"BeginTime,omitnil" name:"BeginTime"` + + // 结束时间 + // 注意:此字段可能返回 null,表示取不到有效值。 + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + + // 购买数量 + // 注意:此字段可能返回 null,表示取不到有效值。 + Count *int64 `json:"Count,omitnil" name:"Count"` + + // 续费标志 + // 注意:此字段可能返回 null,表示取不到有效值。 + RenewFlag *uint64 `json:"RenewFlag,omitnil" name:"RenewFlag"` + + // 计费项 + // 注意:此字段可能返回 null,表示取不到有效值。 + BillingItem *string `json:"BillingItem,omitnil" name:"BillingItem"` +} + // Predefined struct for user type ModifyAccessPeriodRequestParams struct { // 访问日志保存期限,范围为[1, 180] @@ -12923,7 +12983,7 @@ type UpsertCCRuleRequestParams struct { // 状态 Status *int64 `json:"Status,omitnil" name:"Status"` - // 高级模式 + // 高级模式(是否使用Session检测),0表示不启用,1表示启用 Advance *string `json:"Advance,omitnil" name:"Advance"` // CC检测阈值 @@ -12935,10 +12995,10 @@ type UpsertCCRuleRequestParams struct { // 检测Url Url *string `json:"Url,omitnil" name:"Url"` - // 匹配方法 + // 匹配方法,0表示等于,1表示前缀匹配,2表示包含 MatchFunc *int64 `json:"MatchFunc,omitnil" name:"MatchFunc"` - // 动作 + // 动作,20表示观察,21表示人机识别,22表示拦截,23表示精准拦截 ActionType *string `json:"ActionType,omitnil" name:"ActionType"` // 优先级 @@ -12950,7 +13010,7 @@ type UpsertCCRuleRequestParams struct { // 附加参数 OptionsArr *string `json:"OptionsArr,omitnil" name:"OptionsArr"` - // waf版本 + // waf版本,sparta-waf或者clb-waf Edition *string `json:"Edition,omitnil" name:"Edition"` // 操作类型 @@ -12978,7 +13038,7 @@ type UpsertCCRuleRequest struct { // 状态 Status *int64 `json:"Status,omitnil" name:"Status"` - // 高级模式 + // 高级模式(是否使用Session检测),0表示不启用,1表示启用 Advance *string `json:"Advance,omitnil" name:"Advance"` // CC检测阈值 @@ -12990,10 +13050,10 @@ type UpsertCCRuleRequest struct { // 检测Url Url *string `json:"Url,omitnil" name:"Url"` - // 匹配方法 + // 匹配方法,0表示等于,1表示前缀匹配,2表示包含 MatchFunc *int64 `json:"MatchFunc,omitnil" name:"MatchFunc"` - // 动作 + // 动作,20表示观察,21表示人机识别,22表示拦截,23表示精准拦截 ActionType *string `json:"ActionType,omitnil" name:"ActionType"` // 优先级 @@ -13005,7 +13065,7 @@ type UpsertCCRuleRequest struct { // 附加参数 OptionsArr *string `json:"OptionsArr,omitnil" name:"OptionsArr"` - // waf版本 + // waf版本,sparta-waf或者clb-waf Edition *string `json:"Edition,omitnil" name:"Edition"` // 操作类型 @@ -13087,7 +13147,8 @@ func (r *UpsertCCRuleResponse) FromJsonString(s string) error { // Predefined struct for user type UpsertIpAccessControlRequestParams struct { - // 域名 + // 具体域名如:test.qcloudwaf.com + // 全局域名为:global Domain *string `json:"Domain,omitnil" name:"Domain"` // ip 参数列表,json数组由ip,source,note,action,valid_ts组成。ip对应配置的ip地址,source固定为custom值,note为注释,action值42为黑名单,40为白名单,valid_ts为有效日期,值为秒级时间戳((如1680570420代表2023-04-04 09:07:00)) @@ -13106,7 +13167,8 @@ type UpsertIpAccessControlRequestParams struct { type UpsertIpAccessControlRequest struct { *tchttp.BaseRequest - // 域名 + // 具体域名如:test.qcloudwaf.com + // 全局域名为:global Domain *string `json:"Domain,omitnil" name:"Domain"` // ip 参数列表,json数组由ip,source,note,action,valid_ts组成。ip对应配置的ip地址,source固定为custom值,note为注释,action值42为黑名单,40为白名单,valid_ts为有效日期,值为秒级时间戳((如1680570420代表2023-04-04 09:07:00)) diff --git a/vendor/modules.txt b/vendor/modules.txt index 022e3ee2e6..73af190ebf 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1157,7 +1157,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit/v20190319 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.711 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls/v20201016 -# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.829 +# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.833 ## explicit; go 1.11 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors @@ -1321,7 +1321,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod/v20180717 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.779 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312 -# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.802 +# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.833 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792 From 666f01f606d1cc1e6a3f7ed24e4b641fa70432eb Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Thu, 4 Jan 2024 16:22:08 +0800 Subject: [PATCH 2/3] fix/waf --- .changelog/2458.txt | 7 +++ .../waf/resource_tc_waf_clb_domain.go | 56 ++++++++++-------- .../waf/resource_tc_waf_saas_domain.go | 58 ++++++++++--------- 3 files changed, 70 insertions(+), 51 deletions(-) create mode 100644 .changelog/2458.txt diff --git a/.changelog/2458.txt b/.changelog/2458.txt new file mode 100644 index 0000000000..1289b74615 --- /dev/null +++ b/.changelog/2458.txt @@ -0,0 +1,7 @@ +```release-note:enhancement +resource/tencentcloud_waf_saas_domain: Adapt to more scenarios of `bot_status` +``` + +```release-note:enhancement +resource/tencentcloud_waf_clb_domain: Adapt to more scenarios of `bot_status` +``` diff --git a/tencentcloud/services/waf/resource_tc_waf_clb_domain.go b/tencentcloud/services/waf/resource_tc_waf_clb_domain.go index 90726588fb..029d6c2d85 100644 --- a/tencentcloud/services/waf/resource_tc_waf_clb_domain.go +++ b/tencentcloud/services/waf/resource_tc_waf_clb_domain.go @@ -411,7 +411,7 @@ func resourceTencentCloudWafClbDomainCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOkExists("bot_status"); ok { tmpBotStatus := v.(int) - if tmpBotStatus != BOT_STATUS_0 { + if tmpBotStatus == BOT_STATUS_1 { botStatus = uint64(tmpBotStatus) modifyBotStatusRequest := waf.NewModifyBotStatusRequest() modifyBotStatusRequest.Domain = &domain @@ -419,6 +419,8 @@ func resourceTencentCloudWafClbDomainCreate(d *schema.ResourceData, meta interfa tmpStatus := strconv.FormatUint(botStatus, 10) modifyBotStatusRequest.Status = &tmpStatus modifyBotStatusRequest.Category = common.StringPtr("bot") + modifyBotStatusRequest.IsVersionFour = common.BoolPtr(true) + modifyBotStatusRequest.BotVersion = common.StringPtr("4.1.0") err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyBotStatus(modifyBotStatusRequest) @@ -442,7 +444,7 @@ func resourceTencentCloudWafClbDomainCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOkExists("api_safe_status"); ok { tmpApiSafeStatus := v.(int) - if tmpApiSafeStatus != API_SAFE_STATUS_0 { + if tmpApiSafeStatus == API_SAFE_STATUS_1 { apiSafeStatus = uint64(tmpApiSafeStatus) modifyApiAnalyzeStatusRequest := waf.NewModifyApiAnalyzeStatusRequest() modifyApiAnalyzeStatusRequest.Domain = &domain @@ -941,6 +943,8 @@ func resourceTencentCloudWafClbDomainUpdate(d *schema.ResourceData, meta interfa tmpStatus := strconv.FormatUint(botStatus, 10) modifyBotStatusRequest.Status = &tmpStatus modifyBotStatusRequest.Category = common.StringPtr("bot") + modifyBotStatusRequest.IsVersionFour = common.BoolPtr(true) + modifyBotStatusRequest.BotVersion = common.StringPtr("4.1.0") err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyBotStatus(modifyBotStatusRequest) @@ -988,32 +992,34 @@ func resourceTencentCloudWafClbDomainUpdate(d *schema.ResourceData, meta interfa } // set cls - if v, ok := d.GetOkExists("cls_status"); ok { - clsStatus = uint64(v.(int)) - modifyDomainsCLSStatusRequest := waf.NewModifyDomainsCLSStatusRequest() - modifyDomainsCLSStatusRequest.Domains = []*waf.DomainURI{ - { - Domain: common.StringPtr(domain), - Edition: common.StringPtr("clb-waf"), - InstanceID: common.StringPtr(instanceID), - }, - } - modifyDomainsCLSStatusRequest.Status = &clsStatus - - err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { - result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyDomainsCLSStatus(modifyDomainsCLSStatusRequest) - if e != nil { - return tccommon.RetryError(e) - } else { - log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, modifyDomainsCLSStatusRequest.GetAction(), modifyDomainsCLSStatusRequest.ToJsonString(), result.ToJsonString()) + if d.HasChange("cls_status") { + if v, ok := d.GetOkExists("cls_status"); ok { + clsStatus = uint64(v.(int)) + modifyDomainsCLSStatusRequest := waf.NewModifyDomainsCLSStatusRequest() + modifyDomainsCLSStatusRequest.Domains = []*waf.DomainURI{ + { + Domain: common.StringPtr(domain), + Edition: common.StringPtr("clb-waf"), + InstanceID: common.StringPtr(instanceID), + }, } + modifyDomainsCLSStatusRequest.Status = &clsStatus - return nil - }) + err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { + result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyDomainsCLSStatus(modifyDomainsCLSStatusRequest) + if e != nil { + return tccommon.RetryError(e) + } else { + log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, modifyDomainsCLSStatusRequest.GetAction(), modifyDomainsCLSStatusRequest.ToJsonString(), result.ToJsonString()) + } - if err != nil { - log.Printf("[CRITAL]%s modify waf clbDomain cls_status failed, reason:%+v", logId, err) - return err + return nil + }) + + if err != nil { + log.Printf("[CRITAL]%s modify waf clbDomain cls_status failed, reason:%+v", logId, err) + return err + } } } diff --git a/tencentcloud/services/waf/resource_tc_waf_saas_domain.go b/tencentcloud/services/waf/resource_tc_waf_saas_domain.go index 4a99077305..7d6844b48d 100644 --- a/tencentcloud/services/waf/resource_tc_waf_saas_domain.go +++ b/tencentcloud/services/waf/resource_tc_waf_saas_domain.go @@ -618,7 +618,7 @@ func resourceTencentCloudWafSaasDomainCreate(d *schema.ResourceData, meta interf if v, ok := d.GetOkExists("bot_status"); ok { tmpBotStatus := v.(int) - if tmpBotStatus != BOT_STATUS_0 { + if tmpBotStatus == BOT_STATUS_1 { botStatus = uint64(tmpBotStatus) modifyBotStatusRequest := waf.NewModifyBotStatusRequest() modifyBotStatusRequest.Domain = &domain @@ -626,6 +626,8 @@ func resourceTencentCloudWafSaasDomainCreate(d *schema.ResourceData, meta interf tmpStatus := strconv.FormatUint(botStatus, 10) modifyBotStatusRequest.Status = &tmpStatus modifyBotStatusRequest.Category = common.StringPtr("bot") + modifyBotStatusRequest.IsVersionFour = common.BoolPtr(true) + modifyBotStatusRequest.BotVersion = common.StringPtr("4.1.0") err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyBotStatus(modifyBotStatusRequest) @@ -649,7 +651,7 @@ func resourceTencentCloudWafSaasDomainCreate(d *schema.ResourceData, meta interf if v, ok := d.GetOkExists("api_safe_status"); ok { tmpApiSafeStatus := v.(int) - if tmpApiSafeStatus != API_SAFE_STATUS_0 { + if tmpApiSafeStatus == API_SAFE_STATUS_1 { apiSafeStatus = uint64(tmpApiSafeStatus) modifyApiAnalyzeStatusRequest := waf.NewModifyApiAnalyzeStatusRequest() modifyApiAnalyzeStatusRequest.Domain = &domain @@ -678,7 +680,7 @@ func resourceTencentCloudWafSaasDomainCreate(d *schema.ResourceData, meta interf if v, ok := d.GetOkExists("cls_status"); ok { tmpClsStatus := v.(int) - if tmpClsStatus != CLS_STATUS_0 { + if tmpClsStatus == CLS_STATUS_1 { clsStatus = uint64(tmpClsStatus) modifyDomainsCLSStatusRequest := waf.NewModifyDomainsCLSStatusRequest() modifyDomainsCLSStatusRequest.Domains = []*waf.DomainURI{ @@ -1381,6 +1383,8 @@ func resourceTencentCloudWafSaasDomainUpdate(d *schema.ResourceData, meta interf tmpStatus := strconv.FormatUint(botStatus, 10) modifyBotStatusRequest.Status = &tmpStatus modifyBotStatusRequest.Category = common.StringPtr("bot") + modifyBotStatusRequest.IsVersionFour = common.BoolPtr(true) + modifyBotStatusRequest.BotVersion = common.StringPtr("4.1.0") err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyBotStatus(modifyBotStatusRequest) @@ -1428,32 +1432,34 @@ func resourceTencentCloudWafSaasDomainUpdate(d *schema.ResourceData, meta interf } // set cls - if v, ok := d.GetOkExists("cls_status"); ok { - clsStatus = uint64(v.(int)) - modifyDomainsCLSStatusRequest := waf.NewModifyDomainsCLSStatusRequest() - modifyDomainsCLSStatusRequest.Domains = []*waf.DomainURI{ - { - Domain: common.StringPtr(domain), - Edition: common.StringPtr("sparta-waf"), - InstanceID: common.StringPtr(instanceID), - }, - } - modifyDomainsCLSStatusRequest.Status = &clsStatus - - err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { - result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyDomainsCLSStatus(modifyDomainsCLSStatusRequest) - if e != nil { - return tccommon.RetryError(e) - } else { - log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, modifyDomainsCLSStatusRequest.GetAction(), modifyDomainsCLSStatusRequest.ToJsonString(), result.ToJsonString()) + if d.HasChange("cls_status") { + if v, ok := d.GetOkExists("cls_status"); ok { + clsStatus = uint64(v.(int)) + modifyDomainsCLSStatusRequest := waf.NewModifyDomainsCLSStatusRequest() + modifyDomainsCLSStatusRequest.Domains = []*waf.DomainURI{ + { + Domain: common.StringPtr(domain), + Edition: common.StringPtr("sparta-waf"), + InstanceID: common.StringPtr(instanceID), + }, } + modifyDomainsCLSStatusRequest.Status = &clsStatus - return nil - }) + err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { + result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafClient().ModifyDomainsCLSStatus(modifyDomainsCLSStatusRequest) + if e != nil { + return tccommon.RetryError(e) + } else { + log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, modifyDomainsCLSStatusRequest.GetAction(), modifyDomainsCLSStatusRequest.ToJsonString(), result.ToJsonString()) + } - if err != nil { - log.Printf("[CRITAL]%s modify waf clbDomain cls_status failed, reason:%+v", logId, err) - return err + return nil + }) + + if err != nil { + log.Printf("[CRITAL]%s modify waf clbDomain cls_status failed, reason:%+v", logId, err) + return err + } } } From adcb241da436b45b2b46e16b95ec5589fd7b7244 Mon Sep 17 00:00:00 2001 From: SevenEarth <391613297@qq.com> Date: Thu, 4 Jan 2024 16:27:21 +0800 Subject: [PATCH 3/3] fix/waf --- tencentcloud/services/waf/resource_tc_waf_clb_domain.go | 4 ++-- tencentcloud/services/waf/resource_tc_waf_saas_domain.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tencentcloud/services/waf/resource_tc_waf_clb_domain.go b/tencentcloud/services/waf/resource_tc_waf_clb_domain.go index 029d6c2d85..77e4546aaa 100644 --- a/tencentcloud/services/waf/resource_tc_waf_clb_domain.go +++ b/tencentcloud/services/waf/resource_tc_waf_clb_domain.go @@ -473,7 +473,7 @@ func resourceTencentCloudWafClbDomainCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOkExists("cls_status"); ok { tmpClsStatus := v.(int) - if tmpClsStatus != CLS_STATUS_0 { + if tmpClsStatus == CLS_STATUS_1 { clsStatus = uint64(tmpClsStatus) modifyDomainsCLSStatusRequest := waf.NewModifyDomainsCLSStatusRequest() modifyDomainsCLSStatusRequest.Domains = []*waf.DomainURI{ @@ -507,7 +507,7 @@ func resourceTencentCloudWafClbDomainCreate(d *schema.ResourceData, meta interfa if v, ok := d.GetOkExists("status"); ok { tmpWafStatus := v.(int) - if tmpWafStatus != CLB_DOMAIN_STATUS_1 { + if tmpWafStatus == CLB_DOMAIN_STATUS_0 { wafStatus = uint64(tmpWafStatus) modifyHostStatusRequest := waf.NewModifyHostStatusRequest() modifyHostStatusRequest.HostsStatus = []*waf.HostStatus{ diff --git a/tencentcloud/services/waf/resource_tc_waf_saas_domain.go b/tencentcloud/services/waf/resource_tc_waf_saas_domain.go index 7d6844b48d..4e13519c7a 100644 --- a/tencentcloud/services/waf/resource_tc_waf_saas_domain.go +++ b/tencentcloud/services/waf/resource_tc_waf_saas_domain.go @@ -744,7 +744,7 @@ func resourceTencentCloudWafSaasDomainCreate(d *schema.ResourceData, meta interf if v, ok := d.GetOkExists("status"); ok { tmpProtectionStatus := v.(int) - if tmpProtectionStatus != PROTECTION_STATUS_1 { + if tmpProtectionStatus == PROTECTION_STATUS_0 { protectionStatus = uint64(tmpProtectionStatus) modifyProtectionStatusRequest := waf.NewModifyProtectionStatusRequest() modifyProtectionStatusRequest.Domain = &domain