华为云用户手册

  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值) 最小长度:0 最大长度:2097152 content-type 是 String 内容类型 缺省值:application/json;charset=UTF-8 最小长度:0 最大长度:64 表3 请求Body参数 参数 是否必选 参数类型 描述 data_object 是 Alert object 告警实体信息 表4 Alert 参数 是否必选 参数类型 描述 version 否 String 告警对象的版本,该字段的值必须为华为云SSA服务确定的官方发布版本之一 最小长度:0 最大长度:64 id 否 String 事件唯一标识,UUID格式,最大36个字符 最小长度:0 最大长度:36 domain_id 否 String 数据投递后,被委托用户的domain_id 最小长度:0 最大长度:36 region_id 否 String 数据投递后,被委托用户的region_id 最小长度:0 最大长度:36 workspace_id 否 String 当前的工作空间id 最小长度:0 最大长度:36 labels 否 String 标签,仅展示 最小长度:0 最大长度:1024 environment 否 environment object 告警产生的环境坐标信息 data_source 否 data_source object 首次上报数据源 first_observed_time 否 String 首次发现时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 last_observed_time 否 String 最近发现时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 create_time 否 String 记录时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 arrive_time 否 String 接收时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 title 否 String 告警标题 最小长度:0 最大长度:255 description 否 String 告警描述信息 最小长度:0 最大长度:1024 source_url 否 String 告警URL链接,指向数据源产品中有关当前事件说明的页面 最小长度:0 最大长度:1024 count 否 Integer 事件发生次数 最小值:0 最大值:999 confidence 否 Integer 事件的置信度。置信度的定义旨在说明识别的行为或问题的可能性。 取值范围:0-100,0表示置信度为0%,100表示置信度为100% 最小值:0 最大值:100 severity 否 String 严重性等级,取值范围:Tips | Low | Medium | High | Fatal 说明: 0: Tips – 未发现任何问题。 1: Low – 无需针对问题执行任何操作。 2: Medium – 问题需要处理,但不紧急。 3: High – 问题必须优先处理。 4: Fatal – 问题必须立即处理,以防止产生进一步的损害 最小长度:3 最大长度:6 枚举值: Tips Low Medium High Fatal criticality 否 Integer 关键性,是指事件涉及的资源的重要性级别。 取值范围:0-100,0表示资源不关键,100表示最关键资源 最小值:0 最大值:100 alert_type 否 alert_type object 告警分类,详细定义参考《告警类型定义》 network_list 否 Array of network_list objects 网络信息 数组长度:0 - 999 resource_list 否 Array of resource_list objects 受影响资源 数组长度:0 - 999 remediation 否 remediation object 补救措施 verification_state 否 String 验证状态,标识事件的准确性。可选类型如下: Unknown – 未知 True_Positive – 确认 False_Positive – 误报 默认填写Unknown 最小长度:32 最大长度:64 枚举值: Unknown True_Positive False_Positive handle_status 否 String 事件处理状态,可选类型如下: Open – 打开,默认 Block – 阻塞 Closed – 关闭 默认填写Open 最小长度:4 最大长度:5 枚举值: Open Block Closed sla 否 Integer 约束闭环时间:设置风险接受持续时间。单位:小时 最小值:0 最大值:999 update_time 否 String 更新时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 close_time 否 String 关闭时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 ipdrr_phase 否 String 周期/处置阶段编号 Prepartion|Detection and Analysis|Containm,Eradication& Recovery|Post-Incident-Activity 最小长度:0 最大长度:64 枚举值: Prepartion Detection and Analysis Containm,Eradication& Recovery Post-Incident-Activity simulation 否 String 调试字段 最小长度:0 最大长度:64 actor 否 String 告警调查员 最小长度:0 最大长度:64 owner 否 String 责任人、服务责任人 最小长度:0 最大长度:64 creator 否 String 创建人 最小长度:0 最大长度:64 close_reason 否 String 关闭原因: 误检 - False detection 已解决 - Resolved 重复 - Repeated 其他 - Other 最小长度:0 最大长度:64 枚举值: False detection Resolved Repeated Other close_comment 否 String 关闭评论 最小长度:0 最大长度:1024 malware 否 malware object 恶意软件 system_info 否 Object 系统信息 process 否 Array of process objects 进程信息 数组长度:0 - 999 user_info 否 Array of user_info objects 用户信息 数组长度:0 - 999 file_info 否 Array of file_info objects 文件信息 数组长度:0 - 999 system_alert_table 否 Object 告警管理列表的布局字段 表5 environment 参数 是否必选 参数类型 描述 vendor_type 否 String 环境供应商:HWCP/HWC/AWS/Azure/GCP 最小长度:0 最大长度:64 domain_id 否 String 租户id 最小长度:0 最大长度:64 region_id 否 String 区域od,全局服务global 最小长度:0 最大长度:64 cross_workspace_id 否 String 数据投递前的源工作空间id,在源空间下值为null,投递后为被委托用户的id 最小长度:0 最大长度:64 project_id 否 String 项目id, 全局服务默认null 最小长度:0 最大长度:64 表6 data_source 参数 是否必选 参数类型 描述 source_type 否 Integer 数据源类型,取值范围如下: 1 - 华为产品 2 - 第三方产品 3 - 租户私有产品 最小值:1 最大值:3 枚举值: 1 2 3 domain_id 否 String 数据源产品所属账号的id 最小长度:0 最大长度:36 project_id 否 String 数据源产品所属项目的id 最小长度:0 最大长度:64 region_id 否 String 数据源产品所在区域,具体取值范围查看华为云地区和终端节点定义,例如cn-north-1 最小长度:0 最大长度:64 company_name 否 String 数据源产品所属公司的名称 最小长度:0 最大长度:16 product_name 否 String 数据源产品的名称 最小长度:0 最大长度:24 product_feature 否 String 产品功能特性名称,用来指明检测到当前事件的产品的功能特性 最小长度:0 最大长度:24 product_module 否 String 检测模块列表 最小长度:0 最大长度:1024 表7 alert_type 参数 是否必选 参数类型 描述 category 否 String 类别 最小长度:0 最大长度:1024 alert_type 否 String 告警类型 最小长度:0 最大长度:1024 表8 network_list 参数 是否必选 参数类型 描述 direction 否 String 方向,取值范围:IN | OUT 最小长度:0 最大长度:3 枚举值: IN OUT protocol 否 String 协议,包含7层和4层的协议 参考:IANA registered name https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml 最小长度:0 最大长度:64 src_ip 否 String 源IP地址 最小长度:0 最大长度:64 src_port 否 Integer 源端口,0–65535 最小值:0 最大值:65535 src_domain 否 String 源域名 最小长度:0 最大长度:128 src_geo 否 src_geo object 源IP的地理位置信息 dest_ip 否 String 目的IP地址 最小长度:32 最大长度:64 dest_port 否 String 目的端口,0–65535 最小长度:0 最大长度:65535 dest_domain 否 String 目的域名 最小长度:0 最大长度:128 dest_geo 否 dest_geo object 目标IP的地理位置信息 表9 src_geo 参数 是否必选 参数类型 描述 latitude 否 Number 纬度 最小值:0 最大值:90 longitude 否 Number 经度 最小值:0 最大值:180 city_code 否 String 城市编码,Beijing | Shanghai 最小长度:0 最大长度:64 country_code 否 String 国家简码,参考ISO 3166-1 alpha-2,例如:CN | US | DE | IT | SG 最小长度:0 最大长度:64 表10 dest_geo 参数 是否必选 参数类型 描述 latitude 否 Number 纬度 最小值:0 最大值:90 longitude 否 Number 经度 最小值:0 最大值:180 city_code 否 String 城市编码,Beijing | Shanghai 最小长度:0 最大长度:64 country_code 否 String 国家简码,参考ISO 3166-1 alpha-2,例如:CN | US | DE | IT | SG 最小长度:0 最大长度:64 表11 resource_list 参数 是否必选 参数类型 描述 id 否 String 云服务资源id 最小长度:0 最大长度:36 name 否 String 资源名称 最小长度:0 最大长度:255 type 否 String 资源类型;引用华为云RMS type字段 最小长度:0 最大长度:64 provider 否 String 云服务名称;引用华为云RMS provider字段 最小长度:0 最大长度:64 region_id 否 String 区域;按照华为云regionId填写,如cn-north-1等 最小长度:0 最大长度:36 domain_id 否 String 资源所属账号ID,UUID格式 最小长度:0 最大长度:36 project_id 否 String 资源所属项目ID,UUID格式 最小长度:0 最大长度:36 ep_id 否 String 企业项目id 最小长度:0 最大长度:128 ep_name 否 String 企业项目名称 最小长度:0 最大长度:128 tags 否 String 资源标签 1、最多50个key/values对 2、values:最大255字符,取值范围:字母数字,空格,+, -, =, ., _, :, /,@ 最小长度:0 最大长度:2048 表12 remediation 参数 是否必选 参数类型 描述 recommendation 否 String 推荐处理方法 最小长度:0 最大长度:128 url 否 String 链接,指向该事件的一般修复信息。该URL必须可以从公网访问,不需要提供凭证 最小长度:0 最大长度:2048 表13 malware 参数 是否必选 参数类型 描述 malware_family 否 String 恶意家族 最小长度:0 最大长度:64 malware_class 否 String 恶意软件分类 最小长度:0 最大长度:64 表14 process 参数 是否必选 参数类型 描述 process_name 否 String 进程名 最小长度:0 最大长度:64 process_path 否 String 进程执行文件路径 最小长度:0 最大长度:512 process_pid 否 Integer 进程id 最小值:0 最大值:65535 process_uid 否 Integer 进程用户id 最小值:0 最大值:655350 process_cmdline 否 String 进程命令行 最小长度:0 最大长度:128 process_parent_name 否 String 父进程名称 最小长度:0 最大长度:64 process_parent_path 否 String 父进程执行文件路径 最小长度:0 最大长度:512 process_parent_pid 否 Integer 父进程id 最小值:0 最大值:65535 process_parent_uid 否 Integer 父进程用户id 最小值:0 最大值:655350 process_parent_cmdline 否 String 父进程命令行 最小长度:0 最大长度:128 process_child_name 否 String 子进程名称 最小长度:0 最大长度:64 process_child_path 否 String 子进程执行文件路径 最小长度:0 最大长度:512 process_child_pid 否 Integer 子进程id 最小值:0 最大值:65535 process_child_uid 否 Integer 子进程用户id 最小值:0 最大值:655350 process_child_cmdline 否 String 子进程命令行 最小长度:0 最大长度:128 process_launche_time 否 String 进程启动时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 process_terminate_time 否 String 进程结束时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 表15 user_info 参数 是否必选 参数类型 描述 user_id 否 String 用户uid 最小长度:0 最大长度:36 user_name 否 String 用户名称 最小长度:32 最大长度:64 表16 file_info 参数 是否必选 参数类型 描述 file_path 否 String 文件路径/名称 最小长度:0 最大长度:128 file_content 否 String 文件内容 最小长度:0 最大长度:1024 file_new_path 否 String 文件新路径/名称 最小长度:32 最大长度:64 file_hash 否 String 文件hash 最小长度:0 最大长度:128 file_md5 否 String 文件md5 最小长度:0 最大长度:128 file_sha256 否 String 文件sha256 最小长度:0 最大长度:128 file_attr 否 String 文件属性 最小长度:0 最大长度:1024
  • Go 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 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/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") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := secmaster.NewSecMasterClient( secmaster.SecMasterClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.ShowPlaybookRequest{} response, err := client.ShowPlaybook(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • Python 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 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdksecmaster.v2.region.secmaster_region import SecMasterRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdksecmaster.v2 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.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = SecMasterClient.new_builder() \ .with_credentials(credentials) \ .with_region(SecMasterRegion.value_of("cn-north-4")) \ .build() try: request = ShowPlaybookRequest() response = client.show_playbook(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • URI GET /v1/{project_id}/workspaces/{workspace_id}/soc/playbooks/{playbook_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:36 workspace_id 是 String 工作空间ID 最小长度:32 最大长度:36 playbook_id 是 String ID of playbook 最小长度:32 最大长度:64
  • 响应参数 状态码: 200 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表4 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:1 最大长度:32 message String 错误信息 最小长度:1 最大长度:32 data PlaybookInfo object 剧本详情信息 表5 PlaybookInfo 参数 参数类型 描述 id String 剧本ID 最小长度:32 最大长度:64 name String 剧本名称 最小长度:0 最大长度:1024 description String 描述信息 最小长度:0 最大长度:1024 create_time String 剧本创建时间 最小长度:0 最大长度:64 update_time String 剧本更新时间 最小长度:0 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 version_id String 剧本版本ID 最小长度:32 最大长度:64 enabled Boolean 是否启用 workspace_id String 工作空间ID 最小长度:32 最大长度:64 approve_role String 审核用户角色 最小长度:0 最大长度:64 user_role String 用户角色 最小长度:0 最大长度:64 edit_role String 编辑用户角色 最小长度:0 最大长度:64 owner_id String 所有者ID 最小长度:32 最大长度:64 version String 版本号 最小长度:32 最大长度:64 dataclass_name String 数据类名称 最小长度:0 最大长度:64 dataclass_id String 数据类ID 最小长度:1 最大长度:64 unaudited_version_id String 待审核剧本版本ID 最小长度:1 最大长度:64 reject_version_id String 已驳回剧本版本ID 最小长度:1 最大长度:64 状态码: 400 表6 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表7 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • 响应示例 状态码: 200 请求成功响应信息 { "code" : 0, "message" : "Error message", "data" : { "id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "name" : "MyXXX", "description" : "This my XXXX", "create_time" : "2021-01-30T23:00:00Z+0800", "update_time" : "2021-01-30T23:00:00Z+0800", "project_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "version_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "enabled" : true, "workspace_id" : "string", "approve_role" : "approve", "user_role" : "string", "edit_role" : "editor", "owner_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "version" : "v1.1.1", "dataclass_name" : "string", "dataclass_id" : "string", "unaudited_version_id" : "string", "reject_version_id" : "string" } }
  • Java 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 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.secmaster.v2.region.SecMasterRegion; import com.huaweicloud.sdk.secmaster.v2.*; import com.huaweicloud.sdk.secmaster.v2.model.*; public class ShowPlaybookSolution { 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"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); SecMasterClient client = SecMasterClient.newBuilder() .withCredential(auth) .withRegion(SecMasterRegion.valueOf("cn-north-4")) .build(); ShowPlaybookRequest request = new ShowPlaybookRequest(); try { ShowPlaybookResponse response = client.showPlaybook(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()); } } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:2097152 content-type 是 String application/json;charset=UTF-8 缺省值:application/json;charset=UTF-8 最小长度:1 最大长度:64
  • Python 克隆一个剧本及其版本,剧本名称为name。 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 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdksecmaster.v2.region.secmaster_region import SecMasterRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdksecmaster.v2 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.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = SecMasterClient.new_builder() \ .with_credentials(credentials) \ .with_region(SecMasterRegion.value_of("cn-north-4")) \ .build() try: request = CopyPlaybookVersionRequest() request.body = CopyPlaybookInfo( name="name" ) response = client.copy_playbook_version(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • Go 克隆一个剧本及其版本,剧本名称为name。 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 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/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") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := secmaster.NewSecMasterClient( secmaster.SecMasterClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.CopyPlaybookVersionRequest{} nameCopyPlaybookInfo:= "name" request.Body = &model.CopyPlaybookInfo{ Name: &nameCopyPlaybookInfo, } response, err := client.CopyPlaybookVersion(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • Java 克隆一个剧本及其版本,剧本名称为name。 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 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.secmaster.v2.region.SecMasterRegion; import com.huaweicloud.sdk.secmaster.v2.*; import com.huaweicloud.sdk.secmaster.v2.model.*; public class CopyPlaybookVersionSolution { 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"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); SecMasterClient client = SecMasterClient.newBuilder() .withCredential(auth) .withRegion(SecMasterRegion.valueOf("cn-north-4")) .build(); CopyPlaybookVersionRequest request = new CopyPlaybookVersionRequest(); CopyPlaybookInfo body = new CopyPlaybookInfo(); body.withName("name"); request.withBody(body); try { CopyPlaybookVersionResponse response = client.copyPlaybookVersion(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()); } } }
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表5 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:1 最大长度:32 message String Error message 最小长度:1 最大长度:32 data PlaybookVersionInfo object 剧本版本详情信息 表6 PlaybookVersionInfo 参数 参数类型 描述 id String 剧本版本ID 最小长度:32 最大长度:64 description String 描述 最小长度:0 最大长度:1024 create_time String 创建时间 最小长度:0 最大长度:64 update_time String 更新时间 最小长度:0 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 creator_id String 创建者ID 最小长度:32 最大长度:64 modifier_id String 修改者ID 最小长度:32 最大长度:64 playbook_id String 剧本ID 最小长度:32 最大长度:64 version String 版本号 最小长度:32 最大长度:64 enabled Boolean 是否启用。(true--已启用,false-未启用) status String 剧本版本状态,编辑中:EDITING 审核中:APPROVING 不通过:UNPASSED 已发布:PUBLISHED 最小长度:0 最大长度:64 action_strategy String 执行策略. 目前仅支持异步并发执行,对应值为ASYNC 最小长度:0 最大长度:64 actions Array of ActionInfo objects 剧本关联流程列表信息 数组长度:0 - 99 rule_enable Boolean 是否启用触发条件过滤器 rules RuleInfo object 剧本触发规格信息 dataclass_id String 数据类ID 最小长度:0 最大长度:64 trigger_type String 剧本触发方式(EVENT--事件触发,TIMER--定时触发) 最小长度:0 最大长度:64 dataobject_create Boolean 标识数据对象是否创建时触发剧本 dataobject_update Boolean 标识数据对象是否更新时触发剧本 dataobject_delete Boolean 标识数据对象是否删除时触发剧本 version_type Integer 版本类型(0--草稿版本,1--正式版本) 最小值:0 最大值:1 rule_id String 过滤规则ID 最小长度:0 最大长度:64 dataclass_name String 数据类名称 最小长度:0 最大长度:64 approve_name String 审核者 最小长度:0 最大长度:64 表7 ActionInfo 参数 参数类型 描述 id String 剧本流程动作ID 最小长度:32 最大长度:64 name String 流程动作名称 最小长度:0 最大长度:1024 description String 描述 最小长度:0 最大长度:1024 action_type String 流程动作类型 最小长度:0 最大长度:64 action_id String 流程ID 最小长度:32 最大长度:64 playbook_id String 剧本ID 最小长度:0 最大长度:64 playbook_version_id String 剧本版本ID 最小长度:0 最大长度:64 project_id String 项目ID 最小长度:0 最大长度:64 表8 RuleInfo 参数 参数类型 描述 id String 规则ID 最小长度:32 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 rule String 触发规则 最小长度:0 最大长度:128 状态码: 400 表9 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表10 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • 响应示例 状态码: 200 请求成功响应参数 { "code" : 0, "message" : "Error message", "data" : { "id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "description" : "This my XXXX", "create_time" : "2021-01-30T23:00:00Z+0800", "update_time" : "2021-01-30T23:00:00Z+0800", "project_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "creator_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "modifier_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "playbook_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "version" : "v1.1.1", "enabled" : true, "status" : "editing", "action_strategy" : "sync", "actions" : [ { "id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "name" : "MyXXX", "description" : "This my XXXX", "action_type" : "Workflow", "action_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "playbook_id" : "string", "playbook_version_id" : "string", "project_id" : "string" } ], "rule_enable" : true, "rules" : { "id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "project_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "rule" : "909494e3-558e-46b6-a9eb-07a8e18ca62f" }, "dataclass_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "trigger_type" : "event", "dataobject_create" : true, "dataobject_update" : true, "dataobject_delete" : true, "version_type" : 1, "rule_id" : "string", "dataclass_name" : "string", "approve_name" : "string" } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:2097152 content-type 是 String application/json;charset=UTF-8 缺省值:application/json;charset=UTF-8 最小长度:1 最大长度:64 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 名称 最小长度:32 最大长度:64
  • URI POST /v1/{project_id}/workspaces/{workspace_id}/soc/playbooks/versions/{version_id}/clone 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:36 workspace_id 是 String 工作空间ID 最小长度:32 最大长度:36 version_id 是 String 剧本版本ID 最小长度:32 最大长度:64
  • Go 创建一个剧本动作,剧本名称为MyXXX,描述为This my XXXX,剧本动作类型为aopworkflow,剧本动作ID为909494e3-558e-46b6-a9eb-07a8e18ca62f,排序顺序为string。 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 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/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") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := secmaster.NewSecMasterClient( secmaster.SecMasterClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.CreatePlaybookActionRequest{} nameCreateActionInfo:= "MyXXX" descriptionCreateActionInfo:= "This my XXXX" actionTypeCreateActionInfo:= "aopworkflow" actionIdCreateActionInfo:= "909494e3-558e-46b6-a9eb-07a8e18ca62f" sortOrderCreateActionInfo:= "string" var listCreateActionInfobody = []model.CreateAction{ { Name: &nameCreateActionInfo, Description: &descriptionCreateActionInfo, ActionType: &actionTypeCreateActionInfo, ActionId: &actionIdCreateActionInfo, SortOrder: &sortOrderCreateActionInfo, }, } request.Body = &listCreateActionInfobody response, err := client.CreatePlaybookAction(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • Python 创建一个剧本动作,剧本名称为MyXXX,描述为This my XXXX,剧本动作类型为aopworkflow,剧本动作ID为909494e3-558e-46b6-a9eb-07a8e18ca62f,排序顺序为string。 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 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdksecmaster.v2.region.secmaster_region import SecMasterRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdksecmaster.v2 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.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = SecMasterClient.new_builder() \ .with_credentials(credentials) \ .with_region(SecMasterRegion.value_of("cn-north-4")) \ .build() try: request = CreatePlaybookActionRequest() listCreateActionInfobody = [ CreateAction( name="MyXXX", description="This my XXXX", action_type="aopworkflow", action_id="909494e3-558e-46b6-a9eb-07a8e18ca62f", sort_order="string" ) ] request.body = listCreateActionInfobody response = client.create_playbook_action(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • 响应示例 状态码: 200 请求成功响应信息 { "code" : 0, "message" : "Error message", "data" : [ { "id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "name" : "MyXXX", "description" : "This my XXXX", "action_type" : "Workflow", "action_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "playbook_id" : "string", "playbook_version_id" : "string", "project_id" : "string" } ] }
  • 响应参数 状态码: 200 表5 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表6 响应Body参数 参数 参数类型 描述 code String Error code 最小长度:1 最大长度:32 message String Error message 最小长度:1 最大长度:32 data Array of ActionInfo objects list of informations of playbook action 数组长度:0 - 100 表7 ActionInfo 参数 参数类型 描述 id String 剧本流程动作ID 最小长度:32 最大长度:64 name String 流程动作名称 最小长度:0 最大长度:1024 description String 描述 最小长度:0 最大长度:1024 action_type String 流程动作类型 最小长度:0 最大长度:64 action_id String 流程ID 最小长度:32 最大长度:64 playbook_id String 剧本ID 最小长度:0 最大长度:64 playbook_version_id String 剧本版本ID 最小长度:0 最大长度:64 project_id String 项目ID 最小长度:0 最大长度:64 状态码: 400 表8 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表9 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • URI POST /v1/{project_id}/workspaces/{workspace_id}/soc/playbooks/versions/{version_id}/actions 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:36 workspace_id 是 String 工作空间ID 最小长度:32 最大长度:36 version_id 是 String 剧本版本ID 最小长度:32 最大长度:64
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:2097152 content-type 是 String application/json;charset=UTF-8 缺省值:application/json;charset=UTF-8 最小长度:1 最大长度:64 表3 请求Body参数 参数 是否必选 参数类型 描述 [数组元素] 是 Array of CreateAction objects 创建剧本版本请求 表4 CreateAction 参数 是否必选 参数类型 描述 name 否 String 名称 最小长度:0 最大长度:1024 description 否 String 描述 最小长度:0 最大长度:1024 action_type 否 String 类型,默认AOP_WORKFLOW. 最小长度:0 最大长度:64 action_id 否 String 剧本动作ID 最小长度:32 最大长度:64 sort_order 否 String 排序方式 最小长度:0 最大长度:64
  • 请求示例 创建一个剧本动作,剧本名称为MyXXX,描述为This my XXXX,剧本动作类型为aopworkflow,剧本动作ID为909494e3-558e-46b6-a9eb-07a8e18ca62f,排序顺序为string。 [ { "name" : "MyXXX", "description" : "This my XXXX", "action_type" : "aopworkflow", "action_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "sort_order" : "string" } ]
  • Python 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 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdksecmaster.v2.region.secmaster_region import SecMasterRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdksecmaster.v2 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.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = SecMasterClient.new_builder() \ .with_credentials(credentials) \ .with_region(SecMasterRegion.value_of("cn-north-4")) \ .build() try: request = ShowIndicatorDetailRequest() response = client.show_indicator_detail(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • Go 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 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/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") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := secmaster.NewSecMasterClient( secmaster.SecMasterClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.ShowIndicatorDetailRequest{} response, err := client.ShowIndicatorDetail(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • 响应示例 状态码: 200 请求成功响应信息 { "code" : 0, "message" : "Error message", "data" : { "id" : "28f61af50fc9452aa0ed5ea25c3cc3d3", "name" : "指标名称", "data_object" : { "indicator_type" : { "layout_id" : "4e2d7f64-a66d-3236-a8c1-704636ced9a7", "indicator_type" : "ipv6", "id" : "ac794b2dfab9fe8c0676587301a636d3", "category" : "ipv6" }, "value" : "ip", "data_source" : { "domain_id" : "ac7438b990ef4a37b741004eb45e8bf4", "project_id" : "5b8bb3c888db498f9eeaf1023f7ba597", "region_id" : "cn-xxx-7", "source_type" : 1 }, "workspace_id" : "909494e3-558e-46b6-a9eb-07a8e18ca620", "project_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f", "granular_marking" : 1, "first_report_time" : "2023-07-04T16:47:01Z+0800", "status" : "Open" }, "dataclass_ref" : { "id" : "28f61af50fc9452aa0ed5ea25c3cc3d3", "name" : "名称" }, "create_time" : "2021-01-30T23:00:00Z+0800", "update_time" : "2021-01-30T23:00:00Z+0800" } }
  • Java 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 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.secmaster.v2.region.SecMasterRegion; import com.huaweicloud.sdk.secmaster.v2.*; import com.huaweicloud.sdk.secmaster.v2.model.*; public class ShowIndicatorDetailSolution { 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"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); SecMasterClient client = SecMasterClient.newBuilder() .withCredential(auth) .withRegion(SecMasterRegion.valueOf("cn-north-4")) .build(); ShowIndicatorDetailRequest request = new ShowIndicatorDetailRequest(); try { ShowIndicatorDetailResponse response = client.showIndicatorDetail(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()); } } }
  • URI GET /v1/{project_id}/workspaces/{workspace_id}/soc/indicators/{indicator_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:64 workspace_id 是 String 工作空间ID 最小长度:1 最大长度:1024 indicator_id 是 String 情报指标ID 最小长度:32 最大长度:64
  • 响应参数 状态码: 200 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表4 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:32 最大长度:64 message String 错误信息 最小长度:1 最大长度:32 data IndicatorDetail object 情报详情信息 表5 IndicatorDetail 参数 参数类型 描述 id String 指标ID 最小长度:32 最大长度:64 name String 指标名称 最小长度:0 最大长度:64 data_object IndicatorDataObjectDetail object 情报详情 workspace_id String 工作空间ID 最小长度:32 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 dataclass_ref DataClassRefPojo object 数据类对象信息 create_time String 创建时间 最小长度:0 最大长度:64 update_time String 更新时间 最小长度:0 最大长度:64 表6 IndicatorDataObjectDetail 参数 参数类型 描述 indicator_type indicator_type object 情报类型对象 value String 值,如:ip url domain等 最小长度:0 最大长度:256 update_time String 更新时间 最小长度:0 最大长度:64 create_time String 创建时间 最小长度:0 最大长度:64 environment environment object 环境信息 data_source data_source object 数据源信息 first_report_time String 首次发生时间 最小长度:0 最大长度:64 is_deleted Boolean 是否删除 last_report_time String 最近发生时间 最小长度:0 最大长度:64 granular_marking Integer 粒度(保密等级),由高到低:1(首次发现)、2(自产数据)、3(需购买)、4(外网直接查询) 最小值:1 最大值:4 name String 名称 最小长度:1 最大长度:64 id String 情报ID 最小长度:1 最大长度:64 project_id String 项目ID 最小长度:1 最大长度:64 revoked Boolean 是否作废 status String 状态, Open--打开,Closed--关闭, Revoked--作废 最小长度:1 最大长度:64 verdict String 威胁度, Black--黑,White--白,Gray--灰 最小长度:1 最大长度:64 workspace_id String 工作空间ID 最小长度:1 最大长度:64 confidence Integer 置信度,取值范围是80-100 最小值:80 最大值:100 表7 indicator_type 参数 参数类型 描述 indicator_type String 情报类型 最小长度:1 最大长度:32 id String 情报类型ID 最小长度:1 最大长度:64 category String 目录 最小长度:1 最大长度:64 layout_id String 布局ID 最小长度:1 最大长度:64 表8 environment 参数 参数类型 描述 vendor_type String 环境供应商(如HWC,AWS,Azure等) 最小长度:0 最大长度:1024 domain_id String 租户ID 最小长度:32 最大长度:64 region_id String 区域ID 最小长度:1 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 表9 data_source 参数 参数类型 描述 source_type Integer 数据源类型,取值范围如下:1 - 华为产品 2 - 第三方产品 3 - 租户私有产品 最小值:0 最大值:9999 domain_id String 租户ID 最小长度:32 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 region_id String 区域ID 最小长度:1 最大长度:64 表10 DataClassRefPojo 参数 参数类型 描述 id String 数据类ID 最小长度:32 最大长度:64 name String 数据类名称 最小长度:0 最大长度:64 状态码: 400 表11 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表12 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • Go 修改一个剧本,剧本名称为MyXXX,描述信息为This my XXXX,开启状态为已开启,启用剧本ID为active_version_id。 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 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/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") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := secmaster.NewSecMasterClient( secmaster.SecMasterClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.UpdatePlaybookRequest{} activeVersionIdModifyPlaybookInfo:= "active_version_id" enabledModifyPlaybookInfo:= true descriptionModifyPlaybookInfo:= "This my XXXX" nameModifyPlaybookInfo:= "MyXXX" request.Body = &model.ModifyPlaybookInfo{ ActiveVersionId: &activeVersionIdModifyPlaybookInfo, Enabled: &enabledModifyPlaybookInfo, Description: &descriptionModifyPlaybookInfo, Name: &nameModifyPlaybookInfo, } response, err := client.UpdatePlaybook(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表5 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:1 最大长度:32 message String 错误信息 最小长度:1 最大长度:32 data PlaybookInfo object 剧本详情信息 表6 PlaybookInfo 参数 参数类型 描述 id String 剧本ID 最小长度:32 最大长度:64 name String 剧本名称 最小长度:0 最大长度:1024 description String 描述信息 最小长度:0 最大长度:1024 create_time String 剧本创建时间 最小长度:0 最大长度:64 update_time String 剧本更新时间 最小长度:0 最大长度:64 project_id String 项目ID 最小长度:32 最大长度:64 version_id String 剧本版本ID 最小长度:32 最大长度:64 enabled Boolean 是否启用 workspace_id String 工作空间ID 最小长度:32 最大长度:64 approve_role String 审核用户角色 最小长度:0 最大长度:64 user_role String 用户角色 最小长度:0 最大长度:64 edit_role String 编辑用户角色 最小长度:0 最大长度:64 owner_id String 所有者ID 最小长度:32 最大长度:64 version String 版本号 最小长度:32 最大长度:64 dataclass_name String 数据类名称 最小长度:0 最大长度:64 dataclass_id String 数据类ID 最小长度:1 最大长度:64 unaudited_version_id String 待审核剧本版本ID 最小长度:1 最大长度:64 reject_version_id String 已驳回剧本版本ID 最小长度:1 最大长度:64 状态码: 400 表7 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表8 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
共100000条