华为云用户手册

  • URI GET /v5/{project_id}/asset/auto-launch/statistics 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户ID 最小长度:1 最大长度:256 表2 Query参数 参数 是否必选 参数类型 描述 name 否 String 自启动项名称 最小长度:1 最大长度:256 type 否 String 自启动项类型 最小长度:1 最大长度:256 enterprise_project_id 否 String 企业项目 最小长度:1 最大长度:256 limit 否 Integer 默认10 最小值:10 最大值:100 缺省值:10 offset 否 Integer 默认是0 最小值:0 最大值:10000 缺省值:0
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_num Integer 自启动项统计信息总数, 最小值:0 最大值:10000 data_list Array of AutoLaunchStatisticsResponseInfo objects 自启动项统计信息列表 数组长度:0 - 10000 表5 AutoLaunchStatisticsResponseInfo 参数 参数类型 描述 name String 自启动项名称 最小长度:1 最大长度:256 type String 自启动项类型 最小长度:1 最大长度:11 num Integer 数量 最小值:0 最大值:10000
  • 请求消息头 附加请求头字段,如指定的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
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 GET:请求服务器返回指定资源。 PUT:请求服务器更新指定资源。 POST:请求服务器新增资源或执行特殊操作。 DELETE:请求服务器删除指定资源,如删除对象等。 HEAD:请求服务器资源头部。 PATCH:请求服务器更新资源的部分内容。当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中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。
  • 请求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在同一个区域也相同,所以简洁起见将这两部分省略。
  • 响应示例 状态码: 200 漏洞扫描 任务对应的主机列表 { "total_num" : 1, "data_list" : [ { "host_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "host_name" : "ecs-ubuntu-abc123", "public_ip" : "112.10.10.3", "private_ip" : "192.168.10.1", "asset_value" : "important", "scan_status" : "failed", "failed_reasons" : [ { "vul_type" : "linux_vul", "failed_reason" : "this_is_failed_reason" } ] } ] }
  • 请求示例 查询漏洞扫描任务id为2b31ed520xxxxxxebedb6e57xxxxxxxx详情信息,展示失败的主机列表,包含失败原因,默认查询第一页10条 GET https://{endpoint}/v5/{project_id}/vulnerability/scan-task/{task_id}/hosts?offset=0&limit=10&scan_status=failed&enterprise_project_id=XXX { "scan_status" : "failed", "task_id" : "2b31ed520xxxxxxebedb6e57xxxxxxxx" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_num Long 总数 最小值:0 最大值:2147483647 data_list Array of VulScanTaskHostInfo objects 漏洞扫描任务对应的主机列表 数组长度:0 - 2147483647 表5 VulScanTaskHostInfo 参数 参数类型 描述 host_id String 主机ID 最小长度:1 最大长度:128 host_name String 主机名称 最小长度:0 最大长度:128 public_ip String 弹性公网IP地址 最小长度:0 最大长度:128 private_ip String 私有IP地址 最小长度:0 最大长度:128 asset_value String 资产重要性,包含如下: important :重要资产 common :一般资产 test :测试资产 最小长度:0 最大长度:128 scan_status String 主机的扫描状态,包含如下: -scanning : 扫描中 -success : 扫描成功 -failed : 扫描失败 最小长度:0 最大长度:32 failed_reasons Array of failed_reasons objects 扫描失败的原因列表 数组长度:0 - 2147483647 表6 failed_reasons 参数 参数类型 描述 vul_type String 扫描失败的漏洞类型,包含如下: -linux_vul : linux漏洞 -windows_vul : windows漏洞 -web_cms : Web-CMS漏洞 -app_vul : 应用漏洞 -urgent_vul : 应急漏洞 最小长度:1 最大长度:32 failed_reason String 扫描失败的原因 最小长度:0 最大长度:128
  • URI GET /v5/{project_id}/vulnerability/scan-task/{task_id}/hosts 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目ID 最小长度:1 最大长度:256 task_id 是 String 任务ID 最小长度:1 最大长度:256 表2 Query参数 参数 是否必选 参数类型 描述 enterprise_project_id 否 String 企业租户ID,查询所有企业项目时填写:all_granted_eps 缺省值:0 最小长度:0 最大长度:256 limit 否 Integer 每页显示个数 最小值:0 最大值:200 缺省值:10 offset 否 Integer 偏移量:指定返回记录的开始位置,必须为数字,取值范围为大于或等于0,默认0 最小值:0 最大值:2000000 缺省值:0 scan_status 否 String 主机的扫描状态,包含如下: -scanning : 扫描中 -success : 扫描成功 -failed : 扫描失败 最小长度:0 最大长度:32
  • 响应示例 状态码: 200 auto launch list { "total_num" : 1, "data_list" : [ { "agent_id" : "9e742932bff2894e3d0869d03989b05cefb27a6cbc201d98c4465296xxxxxxxx", "host_id" : "3d0581a5-03b9-4311-9149-c026b0726a7e", "host_name" : "name", "host_ip" : "3d0581a5-03b9-4311-9149-c026b0726a7e", "name" : "S12hostguard", "type" : 0, "path" : "/etc/hostguard", "hash" : "xxxxxxxx227bffa0c04425ba6c8e0024046caa38dfbca6281b40109axxxxxxxx", "run_user" : "user", "recent_scan_time" : 1668240858425 } ] }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_num Integer 总数 最小值:0 最大值:10000 data_list Array of AutoLauchResponseInfo objects 自启动项列表 数组长度:0 - 10000 表5 AutoLauchResponseInfo 参数 参数类型 描述 agent_id String agent_id 最小长度:0 最大长度:128 host_id String 主机id 最小长度:1 最大长度:128 host_name String 服务器名称 最小长度:1 最大长度:256 host_ip String 服务器ip 最小长度:1 最大长度:256 name String 自启动项名称 最小长度:1 最大长度:256 type Integer 自启动项类型 最小值:0 最大值:11 path String 路径 最小长度:1 最大长度:256 hash String 文件hash 最小长度:1 最大长度:128 run_user String 运行用户 最小长度:1 最大长度:128 recent_scan_time Long 最近扫描时间 最小值:0 最大值:4824430336000
  • URI GET /v5/{project_id}/asset/auto-launchs 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目id 最小长度:1 最大长度:256 表2 Query参数 参数 是否必选 参数类型 描述 host_id 否 String 主机id 最小长度:1 最大长度:128 host_name 否 String 主机名称 最小长度:1 最大长度:128 name 否 String 自启动项名称 最小长度:1 最大长度:256 host_ip 否 String 主机ip 最小长度:1 最大长度:128 type 否 String 自启动项类型 最小长度:1 最大长度:128 enterprise_project_id 否 String 企业项目 最小长度:1 最大长度:256 limit 否 Integer 默认10 最小值:10 最大值:100 缺省值:10 offset 否 Integer 默认是0 最小值:0 最大值:10000 缺省值:0 part_match 否 Boolean 是否模糊匹配,默认false表示精确匹配
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_num Long 总数 最小值:0 最大值:2147483647 data_list Array of HostVulInfo objects 服务器上的漏洞列表 数组长度:0 - 2147483647 表5 HostVulInfo 参数 参数类型 描述 vul_name String 漏洞名称 最小长度:0 最大长度:256 vul_id String 漏洞ID 最小长度:0 最大长度:64 label_list Array of strings 漏洞标签列表 最小长度:0 最大长度:65534 数组长度:0 - 2147483647 repair_necessity String 修复紧急度,包括如下: immediate_repair : 尽快修复 delay_repair : 延后修复 not_needed_repair : 暂可不修复 最小长度:0 最大长度:64 scan_time Long 最近扫描时间 最小值:0 最大值:9223372036854775807 type String 漏洞类型,包含如下: -linux_vul : linux漏洞 -windows_vul : windows漏洞 -web_cms : Web-CMS漏洞 -app_vul : 应用漏洞 最小长度:0 最大长度:128 app_list Array of app_list objects 服务器上受该漏洞影响的软件列表 数组长度:0 - 2147483647 severity_level String 危险程度 Critical : 漏洞cvss评分大于等于9;对应控制台页面的高危 High : 漏洞cvss评分大于等于7,小于9;对应控制台页面的中危 Medium : 漏洞cvss评分大于等于4,小于7;对应控制台页面的中危 Low : 漏洞cvss评分小于4;对应控制台页面的低危 最小长度:1 最大长度:128 solution_detail String 解决方案 最小长度:0 最大长度:65534 url String URL链接 最小长度:0 最大长度:2083 description String 漏洞描述 最小长度:0 最大长度:65534 repair_cmd String 修复命令行 最小长度:1 最大长度:256 status String 漏洞状态 vul_status_unfix : 未处理 vul_status_ignored : 已忽略 vul_status_verified : 验证中 vul_status_fixing : 修复中 vul_status_fixed : 修复成功 vul_status_reboot : 修复成功待重启 vul_status_failed : 修复失败 vul_status_fix_after_reboot : 请重启主机再次修复 最小长度:1 最大长度:128 repair_success_num Integer HSS全网修复该漏洞的次数 最小值:0 最大值:1000000 cve_list Array of cve_list objects CVE列表 数组长度:1 - 10000 is_affect_business Boolean 是否影响业务 first_scan_time Long 首次扫描时间 最小值:0 最大值:9223372036854775807 app_name String 软件名称 最小长度:0 最大长度:256 app_version String 软件版本 最小长度:0 最大长度:256 app_path String 软件路径 最小长度:0 最大长度:512 version String 主机配额 最小长度:0 最大长度:128 support_restore Boolean 是否可以回滚到修复漏洞时创建的备份 表6 app_list 参数 参数类型 描述 app_name String 软件名称 最小长度:0 最大长度:256 app_version String 软件版本 最小长度:0 最大长度:256 upgrade_version String 修复漏洞软件需要升级到的版本 最小长度:0 最大长度:256 app_path String 应用软件的路径(只有应用漏洞有该字段) 最小长度:1 最大长度:512 表7 cve_list 参数 参数类型 描述 cve_id String CVE ID 最小长度:1 最大长度:32 cvss Float CVSS分值 最小值:0 最大值:10
  • 响应示例 状态码: 200 服务器上的漏洞列表 { "data_list" : [ { "app_list" : [ { "app_name" : "Apache Log4j API(Apache Log4j API)", "app_version" : "2.8.2", "upgrade_version" : "2.8.3", "app_path" : "/CloudResetPwdUpdateAgent/lib/log4j-api-2.8.2.jar" }, { "app_name" : "Apache Log4j Core(Apache Log4j Core)", "app_version" : "2.8.2", "upgrade_version" : "2.8.3", "app_path" : "/CloudResetPwdUpdateAgent/lib/log4j-api-2.8.2.jar" } ], "app_name" : "Apache Log4j API(Apache Log4j API)", "app_path" : "/CloudResetPwdUpdateAgent/lib/log4j-api-2.8.2.jar", "app_version" : "2.8.2", "cve_list" : [ { "cve_id" : "CVE-2021-45046", "cvss" : 9 } ], "description" : "发现在某些非默认配置中, Apache Log4j 2.15.0中针对CVE-2021-44228的修复不完整。当日志记录配置使用具有上下文查找(例如$${ctx:loginId})或线程上下文映射模式(%X, %mdc或%MDC)使用JNDI查找模式构建恶意输入数据,从而在某些环境中导致信息泄漏和远程代码执行。Log4j 2.16.0 (Java 8)和2.12.2 (Java 7)通过删除对消息查找模式的支持并在默认情况下禁用JNDI功能来修复此问题。", "first_scan_time" : 1688956612533, "is_affect_business" : true, "label_list" : [ ], "repair_necessity" : "Critical", "scan_time" : 1690469489713, "severity_level" : "Critical", "repair_cmd" : "yum update tcpdump", "solution_detail" : "针对该漏洞的官方修复建议已发布,您可点击链接按照建议进行修复:\nhttps://logging.apache.org/log4j/2.x/security.html\n针对该漏洞的补丁可参考:\nhttps://www.oracle.com/security-alerts/cpujan2022.html\n针对该漏洞的非官方修复建议可参考:\nhttp://www.openwall.com/lists/oss-security/2021/12/14/4\nhttps://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00646.html\nhttps://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-apache-log4j-qRuKNEbd\nhttp://www.openwall.com/lists/oss-security/2021/12/15/3\nhttps://cert-portal.siemens.com/productcert/pdf/ssa-661247.pdf\nhttps://www.kb.cert.org/vuls/id/930724\nhttps://cert-portal.siemens.com/productcert/pdf/ssa-714170.pdf\nhttps://www.debian.org/security/2021/dsa-5022\nhttps://www.oracle.com/security-alerts/alert-cve-2021-44228.html\nhttps://psirt.global.sonicwall.com/vuln-detail/SNWLID-2021-0032\nhttp://www.openwall.com/lists/oss-security/2021/12/18/1\nhttps://cert-portal.siemens.com/productcert/pdf/ssa-397453.pdf\nhttps://cert-portal.siemens.com/productcert/pdf/ssa-479842.pdf\nhttps://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/EOKPQGV24RRBBI4TBZUDQMM4MEH7MXCY/\nhttps://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/SIG7FZULMNK2XF6FZRU4VWYDQXNMUGAJ/\n针对该漏洞的漏洞利用/POC已曝光,可参考下方链接进行验证:\nhttps://github.com/X1pe0/Log4J-Scan-Win\nhttps://github.com/cckuailong/Log4j_CVE-2021-45046\nhttps://github.com/BobTheShoplifter/CVE-2021-45046-Info\nhttps://github.com/tejas-nagchandi/CVE-2021-45046\nhttps://github.com/pravin-pp/log4j2-CVE-2021-45046\nhttps://github.com/mergebase/log4j-samples\nhttps://github.com/lukepasek/log4jjndilookupremove\nhttps://github.com/ludy-dev/cve-2021-45046\nhttps://github.com/lijiejie/log4j2_vul_local_scanner\nhttps://github.com/CaptanMoss/Log4Shell-Sandbox-Signature\nhttps://github.com/taise-hub/log4j-poc", "status" : "vul_status_unfix", "type" : "app_vul", "url" : "[\"https://www.oracle.com/security-alerts/cpujan2022.html\"]", "version" : "hss.version.wtp", "vul_id" : "HCVD-APP-CVE-2021-45046", "vul_name" : "CVE-2021-45046", "repair_success_num" : 3, "support_restore" : true } ], "total_num" : 31 }
  • URI GET /v5/{project_id}/vulnerability/host/{host_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目ID 最小长度:1 最大长度:256 host_id 是 String 服务器id 最小长度:1 最大长度:128 表2 Query参数 参数 是否必选 参数类型 描述 enterprise_project_id 否 String 企业租户ID,“0”表示默认企业项目,查询所有企业项目时填写:all_granted_eps 缺省值:0 最小长度:0 最大长度:256 type 否 String 漏洞类型,默认为linux_vul,包括如下: linux_vul : 漏洞类型-linux漏洞 windows_vul : 漏洞类型-windows漏洞 web_cms : Web-CMS漏洞 app_vul : 应用漏洞 urgent_vul : 应急漏洞 最小长度:0 最大长度:64 vul_name 否 String 漏洞名称 最小长度:0 最大长度:256 limit 否 Integer 每页显示个数 最小值:0 最大值:200 缺省值:10 offset 否 Integer 偏移量:指定返回记录的开始位置,必须为数字,取值范围为大于或等于0,默认0 最小值:0 最大值:2000000 缺省值:0 handle_status 否 String 处置状态,包含如下: unhandled :未处理 handled : 已处理 最小长度:1 最大长度:32 status 否 String 漏洞状态,包含如下: vul_status_unfix : 未处理 vul_status_ignored : 已忽略 vul_status_verified : 验证中 vul_status_fixing : 修复中 vul_status_fixed : 修复成功 vul_status_reboot : 修复成功待重启 vul_status_failed : 修复失败 vul_status_fix_after_reboot : 请重启主机再次修复 最小长度:1 最大长度:32
  • URI GET /v5/{project_id}/asset/user/statistics 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目id 最小长度:1 最大长度:256 表2 Query参数 参数 是否必选 参数类型 描述 user_name 否 String 账号名称,参考windows文件命名规则,支持字母、数字、下划线、中文,特殊字符!@.-等,不包括中文标点符号 最小长度:1 最大长度:128 enterprise_project_id 否 String 企业项目 最小长度:0 最大长度:128 limit 否 Integer 默认10 最小值:10 最大值:200 缺省值:10 offset 否 Integer 默认是0 最小值:0 最大值:2000000 缺省值:0 category 否 String 类别,默认为host,包含如下: host:主机 container:容器 最小长度:0 最大长度:64
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_num Integer 账号总数 最小值:0 最大值:10000 data_list Array of UserStatisticInfoResponseInfo objects 账户统计信息列表 数组长度:0 - 10000 表5 UserStatisticInfoResponseInfo 参数 参数类型 描述 user_name String 账号名称 最小长度:1 最大长度:128 num Integer 账号数量 最小值:0 最大值:10000
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小12MB以内,12MB以上的请求请使用Token认证。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。 Token可通过调用获取用户Token接口获取,调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } } } 获取Token 后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 Content-Type: application/json X-Auth-Token: ABCDEFJ....
  • 请求示例 删除project_id为94b5266c14ce489fa6549817f032dc61、resource_type为hss、resource_id为2acc46ee-34c2-40c2-8060-dc652e6c672a的key为abc的标签 DELETE https://{endpoint}/v5/94b5266c14ce489fa6549817f032dc61/hss/2acc46ee-34c2-40c2-8060-dc652e6c672a/tags/abc
  • URI DELETE /v5/{project_id}/{resource_type}/{resource_id}/tags/{key} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户ID 最小长度:1 最大长度:256 resource_type 是 String 资源类别,hss 最小长度:1 最大长度:64 resource_id 是 String 资源ID 最小长度:0 最大长度:128 key 是 String 待删除的key 最小长度:1 最大长度:256
  • 请求示例 查询主机动态网页防篡改防护动态,目标主机ID为caa958ad-a481-4d46-b51e-6861b8864515,查询起始时间为1668563099000,查询终止时间为1668563199000。 GET https://{endpoint}/v5/{project_id}/webtamper/rasp/protect-history { "host_id" : "caa958ad-a481-4d46-b51e-6861b8864515", "start_time" : 1668563099000, "end_time" : 1668563199000, "limit" : 10, "offset" : 0 }
  • 响应示例 状态码: 200 successful response { "total_num" : 1, "data_list" : [ { "host_ip" : "192.168.5.98", "host_name" : "hss-test", "alarm_level" : 2, "alarm_time" : 1668394634000, "attacked_url" : "/vulns/001-dir-1.jsp", "source_ip" : "10.100.30.200", "threat_type" : "Path Traversal" } ] }
  • URI GET /v5/{project_id}/webtamper/rasp/protect-history 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户ID 最小长度:0 最大长度:64 表2 Query参数 参数 是否必选 参数类型 描述 enterprise_project_id 否 String 企业项目 最小长度:0 最大长度:64 host_id 是 String Host Id 最小长度:0 最大长度:128 start_time 是 Long 起始时间 最小值:0 最大值:4070880000000 end_time 是 Long 终止时间 最小值:0 最大值:4070880000000 limit 是 Integer limit 最小值:0 最大值:100 offset 是 Integer offset 最小值:0 最大值:100 alarm_level 否 Integer 告警级别 最小值:0 最大值:100 severity 否 String 威胁等级 Security : 安全 Low : 低危 Medium : 中危 High : 高危 Critical : 危急 最小长度:0 最大长度:32 protect_status 否 String 防护状态 closed : 未开启 opened : 防护中 最小长度:0 最大长度:32
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total_num Long total number 最小值:0 最大值:200000 data_list Array of HostRaspProtectHistoryResponseInfo objects data list 数组长度:0 - 200000 表5 HostRaspProtectHistoryResponseInfo 参数 参数类型 描述 host_ip String 服务器ip 最小长度:0 最大长度:64 host_name String 服务器名称 最小长度:0 最大长度:64 alarm_time Long 告警时间 最小值:0 最大值:4070880000000 threat_type String 威胁类型 最小长度:0 最大长度:64 alarm_level Integer 告警级别 最小值:0 最大值:100 source_ip String 源IP 最小长度:0 最大长度:128 attacked_url String 攻击URL 最小长度:0 最大长度:2000
  • 响应示例 状态码: 200 Asset statistic info { "account_num" : 5, "port_num" : 5, "process_num" : 5, "app_num" : 5, "auto_launch_num" : 5, "web_framework_num" : 5, "web_site_num" : 5, "jar_package_num" : 5, "kernel_module_num" : 5, "core_conf_file_num" : 1, "database_num" : 1, "environment_num" : 0, "web_app_num" : 8, "web_service_num" : 2 }
  • URI GET /v5/{project_id}/asset/statistics 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目id 最小长度:1 最大长度:256 表2 Query参数 参数 是否必选 参数类型 描述 enterprise_project_id 否 String 企业项目 最小长度:0 最大长度:128 host_id 否 String host id 最小长度:1 最大长度:128 category 否 String 类别,默认为host,包含如下: host:主机 container:容器 最小长度:1 最大长度:64
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 account_num Long 账号数量 最小值:0 最大值:2147483647 port_num Long 开放端口数量 最小值:0 最大值:2147483647 process_num Long 进程数量 最小值:0 最大值:2147483647 app_num Long 软件数量 最小值:0 最大值:2147483647 auto_launch_num Long 自启动数量 最小值:0 最大值:2147483647 web_framework_num Long web框架数量 最小值:0 最大值:2147483647 web_site_num Long Web站点数量 最小值:0 最大值:2147483647 jar_package_num Long Jar包数量 最小值:0 最大值:2147483647 kernel_module_num Long 内核模块数量 最小值:0 最大值:2147483647 web_service_num Long web服务数量 最小值:0 最大值:2147483647 web_app_num Long web应用数量 最小值:0 最大值:2147483647 database_num Long 数据库数量 最小值:0 最大值:2147483647 core_conf_file_num Long 关键配置文件数量 最小值:0 最大值:2147483647 environment_num Long 环境变量数量 最小值:0 最大值:2147483647
  • 文件上传 开发过程中,您有任何问题可以在github上提交issue,或者在华为云 对象存储服务 论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。 文件上传使用本地文件作为对象的数据源。以下代码展示了如何进行文件上传: // 初始化配置参数 ObsConfig config = new ObsConfig(); config.Endpoint = "https://your-endpoint"; // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全;本示例以ak和sk保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量AccessKeyID和SecretAccessKey。 // 您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html string accessKey= Environment.GetEnvironmentVariable("AccessKeyID", EnvironmentVariableTarget.Machine); string secretKey= Environment.GetEnvironmentVariable("SecretAccessKey", EnvironmentVariableTarget.Machine); // 创建ObsClient实例 ObsClient client = new ObsClient(accessKey, secretKey, config); // 上传文件 try { PutObjectRequest request = new PutObjectRequest() { BucketName = "bucketname", //待传入目标桶名 ObjectKey = "objectname", //待传入对象名(对象名是对象在桶中的完整路径,如folder/test.txt,路径中不包含桶名) FilePath = "localfile",//待上传的本地文件路径,需要指定到具体的文件名 }; PutObjectResponse response = client.PutObject(request); Console.WriteLine("put object response: {0}", response.StatusCode); } catch (ObsException ex) { Console.WriteLine("ErrorCode: {0}", ex.ErrorCode); Console.WriteLine("ErrorMessage: {0}", ex.ErrorMessage); } 上传的内容大小不能超过5GB。 父主题: 上传对象
共100000条