华为云用户手册

  • 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.DeletePlaybookActionRequest{} response, err := client.DeletePlaybookAction(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • 请求参数 表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
  • 响应参数 状态码: 200 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表4 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:1 最大长度:32 message String 响应消息 最小长度:1 最大长度:32 状态码: 400 表5 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表6 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • URI DELETE /v1/{project_id}/workspaces/{workspace_id}/soc/playbooks/versions/{version_id}/actions/{action_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:36 workspace_id 是 String 工作空间ID 最小长度:32 最大长度:36 version_id 是 String 剧本版本ID 最小长度:32 最大长度:64 action_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
  • 响应参数 状态码: 200 表3 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表4 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:1 最大长度:32 message String 响应消息 最小长度:1 最大长度:32 状态码: 400 表5 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表6 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • 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 DeletePlaybookRuleSolution { 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(); DeletePlaybookRuleRequest request = new DeletePlaybookRuleRequest(); try { DeletePlaybookRuleResponse response = client.deletePlaybookRule(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()); } } }
  • 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.DeletePlaybookRuleRequest{} response, err := client.DeletePlaybookRule(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 = DeletePlaybookRuleRequest() response = client.delete_playbook_rule(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 DELETE /v1/{project_id}/workspaces/{workspace_id}/soc/playbooks/versions/{version_id}/rules/{rule_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:36 workspace_id 是 String 工作空间ID 最小长度:32 最大长度:36 version_id 是 String 剧本版本ID 最小长度:32 最大长度:64 rule_id 是 String 规则ID 最小长度:36 最大长度:36
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表5 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:1 最大长度:32 message String 响应消息信息 最小长度:1 最大长度:32 total Integer 总条数 最小值:0 最大值:99999 size Integer 分页查询数据大小 最小值:0 最大值:9999 page Integer 当前页码 最小值:0 最大值:100 data Array of PlaybookInfo objects 剧本列表信息 数组长度:0 - 100000000 表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
  • 响应示例 状态码: 200 剧本列表查询成功响应参数 { "code" : 0, "message" : null, "total" : 41, "page" : 10, "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" } ] }
  • URI GET /v1/{project_id}/workspaces/{workspace_id}/soc/playbooks 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 最小长度:32 最大长度:36 workspace_id 是 String 工作空间ID 最小长度:32 最大长度:36 表2 Query参数 参数 是否必选 参数类型 描述 search_txt 否 String 搜索关键字 最小长度:32 最大长度:36 enabled 否 Boolean 是否启用 offset 是 Integer 分页查询参数。用于指定查询结果的起始位置,从0开始 最小值:0 最大值:999999 缺省值:0 limit 是 Integer 分页查询参数,用于指定一次查询最多的结果数,从1开始 最小值:1 最大值:999999 description 否 String 剧本描述 最小长度:0 最大长度:64 dataclass_name 否 String 数据类名称 最小长度:0 最大长度:64 name 否 String 剧本名称 最小长度:0 最大长度:64
  • 请求参数 表3 请求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
  • Java 查询数据对象的关系列表,偏移量为10,查询3条 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 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 ListDataobjectRelationsSolution { 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(); ListDataobjectRelationsRequest request = new ListDataobjectRelationsRequest(); DataobjectSearch body = new DataobjectSearch(); body.withOffset(10); body.withLimit(3); request.withBody(body); try { ListDataobjectRelationsResponse response = client.listDataobjectRelations(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()); } } }
  • Python 查询数据对象的关系列表,偏移量为10,查询3条 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 # 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 = ListDataobjectRelationsRequest() request.body = DataobjectSearch( offset=10, limit=3 ) response = client.list_dataobject_relations(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 查询数据对象的关系列表,偏移量为10,查询3条 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 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.ListDataobjectRelationsRequest{} offsetDataobjectSearch:= int32(10) limitDataobjectSearch:= int32(3) request.Body = &model.DataobjectSearch{ Offset: &offsetDataobjectSearch, Limit: &limitDataobjectSearch, } response, err := client.ListDataobjectRelations(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • 响应参数 状态码: 200 表8 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表9 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误信息 最小长度:0 最大长度:1024 total Integer 告警总数 最小值:0 最大值:10000 limit Integer 分页大小 最小值:0 最大值:10000 offset Integer 偏移量 最小值:0 最大值:10000 success Boolean 是否成功 data Array of DataObjectDetail objects 告警列表 数组长度:0 - 10000 表10 DataObjectDetail 参数 参数类型 描述 create_time String 记录时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 data_object DataObject object 告警实体信息 dataclass_ref dataclass_ref object 数据类对象 format_version Integer 格式版本 最小值:0 最大值:999 id String 事件唯一标识,UUID格式,最大36个字符 最小长度:0 最大长度:36 project_id String 当前项目的id 最小长度:0 最大长度:64 update_time String 更新时间,格式ISO8601:YYYY-MM-DDTHH:mm:ss.ms+timezone。时区信息为事件发生时区,无法解析时区的时间,默认时区填东八区 最小长度:0 最大长度:30 version Integer 版本 最小值:0 最大值:999 workspace_id String 当前的工作空间id 最小长度:0 最大长度:36 表11 DataObject 参数 参数类型 描述 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 environment environment object 告警产生的环境坐标信息 datasource datasource 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 表12 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 表13 datasource 参数 参数类型 描述 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 表14 alert_type 参数 参数类型 描述 category String 类别 最小长度:0 最大长度:1024 alert_type String 告警类型 最小长度:0 最大长度:1024 表15 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的地理位置信息 表16 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 表17 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 表18 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 表19 remediation 参数 参数类型 描述 recommendation String 推荐处理方法 最小长度:0 最大长度:128 url String 链接,指向该事件的一般修复信息。该URL必须可以从公网访问,不需要提供凭证 最小长度:0 最大长度:2048 表20 malware 参数 参数类型 描述 malware_family String 恶意家族 最小长度:0 最大长度:64 malware_class String 恶意软件分类 最小长度:0 最大长度:64 表21 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 表22 user_info 参数 参数类型 描述 user_id String 用户uid 最小长度:0 最大长度:36 user_name String 用户名称 最小长度:32 最大长度:64 表23 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 表24 dataclass_ref 参数 参数类型 描述 id String 数据类唯一标识,UUID格式,最大36个字符 最小长度:0 最大长度:36 name String 数据类名称 最小长度:0 最大长度:36 状态码: 400 表25 响应Header参数 参数 参数类型 描述 X-request-id String 请求ID,格式为:request_uuid-timestamp-hostname 表26 响应Body参数 参数 参数类型 描述 code String 错误码 最小长度:0 最大长度:64 message String 错误描述 最小长度:0 最大长度:1024
  • 请求参数 表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参数 参数 是否必选 参数类型 描述 limit 否 Integer 分页大小 最小值:0 最大值:1000 offset 否 Integer 偏移量 最小值:0 最大值:1000 sort_by 否 String 排序字段:create_time | update_time 最小长度:0 最大长度:1000 order 否 String 排序方式:DESC | ASC 最小长度:0 最大长度:1000 枚举值: DESC ASC from_date 否 String 搜索开始时间 最小长度:0 最大长度:64 to_date 否 String 搜索结束时间 最小长度:0 最大长度:64 condition 否 condition object 搜索条件表达式 表4 condition 参数 是否必选 参数类型 描述 conditions 否 Array of conditions objects 表达式列表 数组长度:0 - 999 logics 否 Array of logics objects 表达式逻辑 数组长度:0 - 999 表5 conditions 参数 是否必选 参数类型 描述 name 否 String 表达式名称 最小长度:0 最大长度:64 data 否 Array of data objects 表达式内容 数组长度:0 - 999 表6 data 参数 是否必选 参数类型 描述 filed 否 String 字段 最小长度:0 最大长度:64 expression 否 String 逻辑表达式 最小长度:0 最大长度:64 value 否 String 字段值 最小长度:0 最大长度:64 表7 logics 参数 是否必选 参数类型 描述 name 否 String 表达式名称 最小长度:0 最大长度:64
  • URI POST /v1/{project_id}/workspaces/{workspace_id}/soc/{dataclass_type}/{data_object_id}/{related_dataclass_type}/search 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目id 最小长度:32 最大长度:36 workspace_id 是 String 工作空间id 最小长度:32 最大长度:36 dataclass_type 是 String 关联主体dataobject所属数据类,小写复数,如告警为alerts,事件为incidents 最小长度:1 最大长度:64 data_object_id 是 String 关联主体dataobject的id 最小长度:32 最大长度:36 related_dataclass_type 是 String 被关联的dataobject所属数据类,小写复数,如告警为alerts,事件为incidents 最小长度:1 最大长度:64
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的帐号名称,********为用户登录密码,xxxxxxxxxxxxxxxxxx为project的名称,如“cn-north-4”,您可以从地区和终端节点获取,对应地区和终端节点页面的“区域”字段的值。 scope参数定义了Token的作用域,下面示例中获取的Token仅能访问project下的资源。您还可以设置Token作用域为某个帐号下所有资源或帐号的某个project下的资源,详细定义请参见获取用户Token。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxxxxxxxxxxxx" } } } } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于获取用户Token接口,返回的响应消息头中“x-subject-token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 GET:请求服务器返回指定资源。 PUT:请求服务器更新指定资源。 POST:请求服务器新增资源或执行特殊操作。 DELETE:请求服务器删除指定资源,如删除对象等。 HEAD:请求服务器资源头部。 PATCH:请求服务器更新资源的部分内容。当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 如下公共消息头需要添加到请求中。 Content-Type:消息体的类型(格式),必选,默认取值为“application/json”,有其他取值时会在具体接口中专门说明。 X-Auth-Token:用户Token,可选,当使用Token方式认证时,必须填充该字段。用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见AK/SK认证。 对于获取用户Token接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
  • 请求URI 请求URI由如下部分组成。 {URI-scheme} :// {Endpoint} / {resource-path} ? {query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 URI-scheme: 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint: 指定承载REST服务端点的服务器域名或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点获取。 例如IAM服务在“华北-北京四”区域的Endpoint为“iam.cn-north-4.myhuaweicloud.com”。 resource-path: 资源路径,也即API访问路径。从具体API的URI模块获取,例如“获取用户Token”API的resource-path为“/v3/auth/tokens”。 query-string: 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。 例如您需要获取IAM在“华北-北京四”区域的Token,则需使用“华北-北京四”区域的Endpoint(iam.cn-north-4.myhuaweicloud.com),并在获取用户Token的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。 https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens 图1 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,同一个服务的Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • Go 停用告警规则,名称为123123 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.DisableAlertRuleRequest{} var listBodybody = []string{ "123123", } request.Body = &listBodybody response, err := client.DisableAlertRule(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • URI POST /v1/{project_id}/workspaces/{workspace_id}/siem/alert-rules/disable 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目 ID。Project ID. 最小长度:32 最大长度:36 workspace_id 是 String 工作空间 ID。Workspace ID. 最小长度:32 最大长度:36
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token,通过调用IAM服务获取用户Token接口获取。 IAM user token, fetch from IAM api. 最小长度:1 最大长度:2097152 表3 请求Body参数 参数 是否必选 参数类型 描述 [数组元素] 是 Array of strings DisableAlertRuleRequestBody
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-request-id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. 表5 响应Body参数 参数 参数类型 描述 rule_id String 告警规则 ID。Alert rule ID. 最小长度:36 最大长度:36 status String 启用状态,启用、停用。Status, enabled, disabled. 最小长度:1 最大长度:255 枚举值: ENABLED DISABLED 状态码: 400 表6 响应Header参数 参数 参数类型 描述 X-request-id String This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname.
  • Python 停用告警规则,名称为123123 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 # 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 = DisableAlertRuleRequest() listBodybody = [ "123123" ] request.body = listBodybody response = client.disable_alert_rule(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.ShowPlaybookStatisticsRequest{} response, err := client.ShowPlaybookStatistics(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
共100000条