Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 04ea025

Browse files
committedApr 23, 2025·
add
1 parent 7349378 commit 04ea025

File tree

8 files changed

+223
-16
lines changed

8 files changed

+223
-16
lines changed
 

‎go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ require (
4646
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.1107
4747
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit v1.0.1033
4848
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.1135
49-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1147
49+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1148
5050
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.1128
5151
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cwp v1.0.762
5252
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cynosdb v1.0.1111
@@ -97,7 +97,7 @@ require (
9797
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tsf v1.0.674
9898
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.860
9999
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.1122
100-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1147
100+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1148
101101
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792
102102
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199
103103
github.com/tencentyun/cos-go-sdk-v5 v0.7.64

‎go.sum

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -942,10 +942,13 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1133/go.mod
942942
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1135 h1:NAu4sH5c+kGTZQ0rwhnuYjIXbentw3Np+TbwimH22uc=
943943
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1135/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
944944
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1136/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
945+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1142/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
945946
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1145 h1:DETyir/MtG+GLOD0OatzjrQTTXRguFSJo1ZtPXtbIQw=
946947
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1145/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
947948
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1147 h1:6v559jM1v6A4KJinNZ28RqVZs+ipKMzCWtYWcWy+zZ4=
948949
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1147/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
950+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1148 h1:+2jHvXzO0ljzTtqdnZ6ug0wMLYSaMwyr1zJa0z/DqyE=
951+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1148/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
949952
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993 h1:WlPgXldQCxt7qi5Xrc6j6zTrsXWzN5BcOGs7Irq7fwQ=
950953
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/controlcenter v1.0.993/go.mod h1:Z9U8zNtyuyKhjS0698wqsrG/kLx1TQ5CEixXBwVe7xY=
951954
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/csip v1.0.860 h1:F3esKBIT3HW9+7Gt8cVgf8X06VdGIczpgLBUECzSEzU=
@@ -1074,6 +1077,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1037 h1:sgHOHq
10741077
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1037/go.mod h1:QM5m6aZ65kaxaES0D44BNKmemn+9WBf5vr3HDDPrh8U=
10751078
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1147 h1:SxZsn9N4c1yx40kZOINIh9AnUKcgChUWbZoDiv6VvmQ=
10761079
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1147/go.mod h1:T4sxG9+SJ038MBsam2upsEYRpQ82JpX+IkZ08+P9RlE=
1080+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1148 h1:ILcBbO+ed+ZcIRWrNTQ7/bpI7CP12k4ZDmLLGoTz5/I=
1081+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1148/go.mod h1:1n+Jj71KPI+7oeySg5l9+JopaMgsIqA0y9ATSi4nx0k=
10771082
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792 h1:NLgKNOIHWa38AmW7dyfI9Jlcp2Kr9VRD94f48pPNmxM=
10781083
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792/go.mod h1:Xz6vPV3gHlzPwtEcmWdWO1EUXJDgn2p7UMCXbJiVioQ=
10791084
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199 h1:hMBLtiJPnZ9GvA677cTB6ELBR6B68wCR2QY1sNoGQc4=

‎tencentcloud/services/waf/resource_tc_waf_log_post_ckafka_flow.go

Lines changed: 147 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,52 @@ func ResourceTencentCloudWafLogPostCkafkaFlow() *schema.Resource {
7171
Description: "Version number of Kafka cluster.",
7272
},
7373

74+
"sasl_enable": {
75+
Type: schema.TypeInt,
76+
Optional: true,
77+
Description: "Whether to enable SASL verification, default not enabled, 0-off, 1-on.",
78+
},
79+
80+
"sasl_user": {
81+
Type: schema.TypeString,
82+
Optional: true,
83+
Description: "SASL username.",
84+
},
85+
86+
"sasl_password": {
87+
Type: schema.TypeString,
88+
Optional: true,
89+
Description: "SASL password.",
90+
},
91+
92+
"write_config": {
93+
Type: schema.TypeList,
94+
Optional: true,
95+
MaxItems: 1,
96+
Description: "Enable access to certain fields of the log and check if they have been delivered.",
97+
Elem: &schema.Resource{
98+
Schema: map[string]*schema.Schema{
99+
"enable_headers": {
100+
Type: schema.TypeInt,
101+
Optional: true,
102+
Description: "1: Enable 0: Do not enable.",
103+
},
104+
105+
"enable_body": {
106+
Type: schema.TypeInt,
107+
Optional: true,
108+
Description: "1: Enable 0: Do not enable.",
109+
},
110+
111+
"enable_bot": {
112+
Type: schema.TypeInt,
113+
Optional: true,
114+
Description: "1: Enable 0: Do not enable.",
115+
},
116+
},
117+
},
118+
},
119+
74120
"flow_id": {
75121
Type: schema.TypeInt,
76122
Computed: true,
@@ -133,6 +179,39 @@ func resourceTencentCloudWafLogPostCkafkaFlowCreate(d *schema.ResourceData, meta
133179
request.KafkaVersion = helper.String(v.(string))
134180
}
135181

182+
if v, ok := d.GetOkExists("sasl_enable"); ok {
183+
request.SASLEnable = helper.IntInt64(v.(int))
184+
}
185+
186+
if v, ok := d.GetOk("sasl_user"); ok {
187+
request.SASLUser = helper.String(v.(string))
188+
}
189+
190+
if v, ok := d.GetOk("sasl_password"); ok {
191+
request.SASLPassword = helper.String(v.(string))
192+
}
193+
194+
if v, ok := d.GetOk("write_config"); ok {
195+
for _, item := range v.([]interface{}) {
196+
if dMap, ok := item.(map[string]interface{}); ok && dMap != nil {
197+
config := wafv20180125.FieldWriteConfig{}
198+
if v, ok := dMap["enable_headers"].(int); ok {
199+
config.EnableHeaders = helper.IntInt64(v)
200+
}
201+
202+
if v, ok := dMap["enable_body"].(int); ok {
203+
config.EnableBody = helper.IntInt64(v)
204+
}
205+
206+
if v, ok := dMap["enable_bot"].(int); ok {
207+
config.EnableBot = helper.IntInt64(v)
208+
}
209+
210+
request.WriteConfig = &config
211+
}
212+
}
213+
}
214+
136215
// check unique first
137216
respData, err := service.DescribeWafLogPostCkafkaFlowById(ctx, logType)
138217
if err != nil {
@@ -234,6 +313,10 @@ func resourceTencentCloudWafLogPostCkafkaFlowRead(d *schema.ResourceData, meta i
234313
_ = d.Set("compression", item.Compression)
235314
}
236315

316+
if item.VipType != nil {
317+
_ = d.Set("vip_type", item.VipType)
318+
}
319+
237320
if item.LogType != nil {
238321
_ = d.Set("log_type", item.LogType)
239322
}
@@ -246,6 +329,36 @@ func resourceTencentCloudWafLogPostCkafkaFlowRead(d *schema.ResourceData, meta i
246329
_ = d.Set("kafka_version", item.Version)
247330
}
248331

332+
if item.SASLEnable != nil {
333+
_ = d.Set("sasl_enable", item.SASLEnable)
334+
}
335+
336+
if item.SASLUser != nil {
337+
_ = d.Set("sasl_user", item.SASLUser)
338+
}
339+
340+
if item.SASLPassword != nil {
341+
_ = d.Set("sasl_password", item.SASLPassword)
342+
}
343+
344+
if item.WriteConfig != nil {
345+
tmpList := make([]map[string]interface{}, 0, 1)
346+
dMap := make(map[string]interface{})
347+
if item.WriteConfig.EnableHeaders != nil {
348+
dMap["enable_headers"] = item.WriteConfig.EnableHeaders
349+
}
350+
351+
if item.WriteConfig.EnableBody != nil {
352+
dMap["enable_body"] = item.WriteConfig.EnableBody
353+
}
354+
355+
if item.WriteConfig.EnableBot != nil {
356+
dMap["enable_bot"] = item.WriteConfig.EnableBot
357+
}
358+
359+
tmpList = append(tmpList, dMap)
360+
}
361+
249362
if item.FlowId != nil {
250363
_ = d.Set("flow_id", item.FlowId)
251364
}
@@ -276,7 +389,7 @@ func resourceTencentCloudWafLogPostCkafkaFlowUpdate(d *schema.ResourceData, meta
276389
request = wafv20180125.NewCreatePostCKafkaFlowRequest()
277390
)
278391

279-
immutableArgs := []string{"log_type"}
392+
immutableArgs := []string{"vip_type", "log_type"}
280393

281394
for _, v := range immutableArgs {
282395
if d.HasChange(v) {
@@ -319,6 +432,39 @@ func resourceTencentCloudWafLogPostCkafkaFlowUpdate(d *schema.ResourceData, meta
319432
request.KafkaVersion = helper.String(v.(string))
320433
}
321434

435+
if v, ok := d.GetOkExists("sasl_enable"); ok {
436+
request.SASLEnable = helper.IntInt64(v.(int))
437+
}
438+
439+
if v, ok := d.GetOk("sasl_user"); ok {
440+
request.SASLUser = helper.String(v.(string))
441+
}
442+
443+
if v, ok := d.GetOk("sasl_password"); ok {
444+
request.SASLPassword = helper.String(v.(string))
445+
}
446+
447+
if v, ok := d.GetOk("write_config"); ok {
448+
for _, item := range v.([]interface{}) {
449+
if dMap, ok := item.(map[string]interface{}); ok && dMap != nil {
450+
config := wafv20180125.FieldWriteConfig{}
451+
if v, ok := dMap["enable_headers"].(int); ok {
452+
config.EnableHeaders = helper.IntInt64(v)
453+
}
454+
455+
if v, ok := dMap["enable_body"].(int); ok {
456+
config.EnableBody = helper.IntInt64(v)
457+
}
458+
459+
if v, ok := dMap["enable_bot"].(int); ok {
460+
config.EnableBot = helper.IntInt64(v)
461+
}
462+
463+
request.WriteConfig = &config
464+
}
465+
}
466+
}
467+
322468
request.LogType = helper.StrToInt64Point(logType)
323469
reqErr := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
324470
result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseWafV20180125Client().CreatePostCKafkaFlowWithContext(ctx, request)

‎tencentcloud/services/waf/resource_tc_waf_log_post_ckafka_flow.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ resource "tencentcloud_waf_log_post_ckafka_flow" "example" {
2727
compression = "snappy"
2828
vip_type = 2
2929
log_type = 1
30-
topic = "tf-test"
30+
topic = "tf-example"
3131
kafka_version = "2.8.1"
3232
}
3333
```

‎vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go

Lines changed: 1 addition & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125/models.go

Lines changed: 54 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎vendor/modules.txt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1166,11 +1166,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cloudaudit/v20190319
11661166
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls v1.0.1135
11671167
## explicit; go 1.14
11681168
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls/v20201016
1169-
<<<<<<< HEAD
1170-
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1145
1171-
=======
1172-
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1147
1173-
>>>>>>> e5cc1d03f (add)
1169+
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1148
11741170
## explicit; go 1.11
11751171
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
11761172
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors
@@ -1356,7 +1352,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod/v20180717
13561352
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.1122
13571353
## explicit; go 1.14
13581354
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312
1359-
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1147
1355+
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.1148
13601356
## explicit; go 1.14
13611357
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf/v20180125
13621358
# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wedata v1.0.792

‎website/docs/r/waf_log_post_ckafka_flow.html.markdown

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ resource "tencentcloud_waf_log_post_ckafka_flow" "example" {
3838
compression = "snappy"
3939
vip_type = 2
4040
log_type = 1
41-
topic = "tf-test"
41+
topic = "tf-example"
4242
kafka_version = "2.8.1"
4343
}
4444
```
@@ -55,6 +55,16 @@ The following arguments are supported:
5555
* `log_type` - (Required, Int) 1- Access log, 2- Attack log, the default is access log.
5656
* `topic` - (Required, String) Theme name, default not to pass or pass empty string, default value is waf_post_access_log.
5757
* `vip_type` - (Required, Int) 1. External network TGW, 2. Supporting environment, default is supporting environment.
58+
* `sasl_enable` - (Optional, Int) Whether to enable SASL verification, default not enabled, 0-off, 1-on.
59+
* `sasl_password` - (Optional, String) SASL password.
60+
* `sasl_user` - (Optional, String) SASL username.
61+
* `write_config` - (Optional, List) Enable access to certain fields of the log and check if they have been delivered.
62+
63+
The `write_config` object supports the following:
64+
65+
* `enable_body` - (Optional, Int) 1: Enable 0: Do not enable.
66+
* `enable_bot` - (Optional, Int) 1: Enable 0: Do not enable.
67+
* `enable_headers` - (Optional, Int) 1: Enable 0: Do not enable.
5868

5969
## Attributes Reference
6070

0 commit comments

Comments
 (0)
Please sign in to comment.