文档首页/ 云防火墙 CFW/ API参考/ API/ 安全报告/ 更新安全报告模板
更新时间:2025-08-28 GMT+08:00
分享

更新安全报告模板

功能介绍

更新安全报告模板

调用方法

请参见如何调用API

URI

PUT /v1/{project_id}/report-profile/{report_profile_id}

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释

项目ID,用于明确项目归属,配置后可通过该ID查询项目下资产,可以从调API处获取,也可以从控制台获取。项目ID获取方式

约束限制

不涉及

取值范围

32位UUID

默认取值

不涉及

report_profile_id

String

参数解释

安全报告模板ID,可以通过调用[查询安全报告模板列表接口]获得,通过返回值中的data.records.profile_id获得

约束限制

不涉及

取值范围

32位UUID

默认取值

不涉及

表2 Query参数

参数

是否必选

参数类型

描述

fw_instance_id

String

参数解释

防火墙ID,用户创建防火墙实例后产生的唯一ID,配置后可区分不同防火墙,可通过防火墙ID获取方式获取

约束限制

不涉及

取值范围

32位UUID

默认取值

不涉及

请求参数

表3 请求Body参数

参数

是否必选

参数类型

描述

description

String

参数解释

模板描述

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

name

String

参数解释

模板名称

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

send_period

Integer

参数解释

发送时间,日报和周报需要设置

约束限制

不涉及

取值范围

0-23

默认取值

不涉及

send_week_day

Integer

参数解释

发送星期,周报需要设置

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

statistic_period

StatisticPeriod object

参数解释

统计周期,自定义报告需要设置

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

status

Integer

参数解释

启用状态

约束限制

不涉及

取值范围

0 关闭

1 启用

默认取值

不涉及

topic_urn

String

参数解释

通知群组

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

subscription_type

Integer

参数解释

通知方式

约束限制

不涉及

取值范围

0 SMN通知方式

1 不需要通知

默认取值

不涉及

表4 StatisticPeriod

参数

是否必选

参数类型

描述

end_time

Long

参数解释

结束时间

约束限制

不涉及

取值范围

毫秒级时间戳

默认取值

不涉及

start_time

Long

参数解释

结束时间

约束限制

不涉及

取值范围

毫秒级时间戳

默认取值

不涉及

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

data

data object

参数解释

响应信息

取值范围

不涉及

表6 data

参数

参数类型

描述

id

String

参数解释

模板ID

取值范围

不涉及

name

String

参数解释

模板名称

取值范围

不涉及

状态码:400

表7 响应Body参数

参数

参数类型

描述

error_code

String

参数解释

错误码

取值范围

不涉及

error_msg

String

参数解释

错误描述

取值范围

不涉及

请求示例

更新安全报告模板,项目ID为eb7accd78ea845078275b2ad5280a109,防火墙ID为8a996d43-75bd-48b4-b1b8-de0706b72b8f,模板名称为test,类型为日报,发送的topic名称为test,urn为urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test,发送时间为每天16点

https://{Endpoint}/v1/eb7accd78ea845078275b2ad5280a109/report-profile/de068699-a2d6-4f3d-8e14-c0ac16ff364e?fw_instance_id=8a996d43-75bd-48b4-b1b8-de0706b72b8f

{
  "name" : "test",
  "topic_urn" : "urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test",
  "send_period" : 16
}

响应示例

状态码:200

OK

{
  "data" : {
    "id" : "de068699-a2d6-4f3d-8e14-c0ac16ff364e",
    "name" : "test"
  }
}

状态码:400

Bad Request

{
  "error_code" : "CFW.00200003",
  "error_msg" : "参数错误"
}

SDK代码示例

SDK代码示例如下。

更新安全报告模板,项目ID为eb7accd78ea845078275b2ad5280a109,防火墙ID为8a996d43-75bd-48b4-b1b8-de0706b72b8f,模板名称为test,类型为日报,发送的topic名称为test,urn为urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test,发送时间为每天16点

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cfw.v1.region.CfwRegion;
import com.huaweicloud.sdk.cfw.v1.*;
import com.huaweicloud.sdk.cfw.v1.model.*;


public class UpdateReportProfileSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        CfwClient client = CfwClient.newBuilder()
                .withCredential(auth)
                .withRegion(CfwRegion.valueOf("<YOUR REGION>"))
                .build();
        UpdateReportProfileRequest request = new UpdateReportProfileRequest();
        request.withReportProfileId("{report_profile_id}");
        UpdateReportProfileDto body = new UpdateReportProfileDto();
        body.withTopicUrn("urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test");
        body.withSendPeriod(16);
        body.withName("test");
        request.withBody(body);
        try {
            UpdateReportProfileResponse response = client.updateReportProfile(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

更新安全报告模板,项目ID为eb7accd78ea845078275b2ad5280a109,防火墙ID为8a996d43-75bd-48b4-b1b8-de0706b72b8f,模板名称为test,类型为日报,发送的topic名称为test,urn为urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test,发送时间为每天16点

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcfw.v1.region.cfw_region import CfwRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcfw.v1 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = CfwClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CfwRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = UpdateReportProfileRequest()
        request.report_profile_id = "{report_profile_id}"
        request.body = UpdateReportProfileDto(
            topic_urn="urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test",
            send_period=16,
            name="test"
        )
        response = client.update_report_profile(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

更新安全报告模板,项目ID为eb7accd78ea845078275b2ad5280a109,防火墙ID为8a996d43-75bd-48b4-b1b8-de0706b72b8f,模板名称为test,类型为日报,发送的topic名称为test,urn为urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test,发送时间为每天16点

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    cfw "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cfw/v1"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cfw/v1/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cfw/v1/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := cfw.NewCfwClient(
        cfw.CfwClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.UpdateReportProfileRequest{}
	request.ReportProfileId = "{report_profile_id}"
	topicUrnUpdateReportProfileDto:= "urn:smn:cn-north-4:eb7accd78ea845078275b2ad5280a109:test"
	sendPeriodUpdateReportProfileDto:= int32(16)
	nameUpdateReportProfileDto:= "test"
	request.Body = &model.UpdateReportProfileDto{
		TopicUrn: &topicUrnUpdateReportProfileDto,
		SendPeriod: &sendPeriodUpdateReportProfileDto,
		Name: &nameUpdateReportProfileDto,
	}
	response, err := client.UpdateReportProfile(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

OK

400

Bad Request

错误码

请参见错误码

相关文档