华为云用户手册

  • 概述 华为云解决方案提供商有面向最终客户转售华为云的资格。解决方案提供商可以通过为客户提供基于华为云的产品和服务,获得销售华为云相应的收益。 解决方案提供商可以以顾问销售模式或者代售模式拓展子客户。 顾问销售模式:经销商关联的客户与华为云直接交易,客户向华为云付款,华为云或者云商店服务商负责向客户开票,伙伴获得华为云给予的激励。 代售模式:经销商关联的客户与解决方案提供商进行交易,客户只能使用解决方案提供商的拨款进行消费,客户的发票由解决方案提供商开具。伙伴向华为云付款,华为云或者云商店服务商负责向伙伴开票。 下面按照顾问销售模式和代售模式介绍解决方案提供商的交易模式。 父主题: 交易模式介绍
  • 与其他云服务的关系 弹性云服务器(Elastic Cloud Server) 弹性云服务器是由CPU、内存、操作系统、云硬盘组成的基础的计算组件。RabbitMQ实例运行在弹性云服务器上,一个代理对应一台弹性云服务器。 云硬盘(Elastic Volume Service) 云硬盘为云服务器提供块存储服务,RabbitMQ的所有数据(如消息和日志等)都保存在云硬盘中。 云审计 (Cloud Trace Service) 云审计为您提供云服务资源的操作记录,记录内容包括您从华为云管理控制台或者开放API发起的云服务资源操作请求以及每次请求的结果,供您查询、审计和回溯使用。 虚拟私有云 RabbitMQ实例运行于虚拟私有云,需要使用虚拟私有云创建的IP和带宽。通过虚拟私有 云安全 组的功能可以增强访问RabbitMQ实例的安全性。 云监控 (Cloud Eye) 云监控是一个开放性的监控平台,提供资源的实时监控、告警、通知等服务。 RabbitMQ实例向CloudEye上报监控数据的更新周期为1分钟。 弹性公网IP(Elastic IP) 弹性公网IP提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务。RabbitMQ实例绑定弹性公网IP后,可以通过公网访问RabbitMQ实例。 标签管理服务(Tag Management Service) 标签管理服务是一种快速便捷将标签集中管理的可视化服务,提供跨区域、跨服务的集中标签管理和资源分类功能。 为RabbitMQ实例添加标签,可以方便用户识别和管理拥有的实例资源。
  • 操作流程 表1 操作流程 序号 步骤 说明 1 创建代码检查任务所属项目 创建代码检查任务所属的项目。 2 创建CodeArts Repo代码仓 创建代码检查任务使用的代码仓。 3 创建规则文件 创建自定义规则时需要上传使用的规则文件。 4 创建自定义规则 在代码检查服务页面创建自定义规则。 5 创建自定义规则集 自定义规则无法直接使用,需要通过创建自定义规则集使用。 6 创建代码检查任务 创建使用自定义规则检查的代码检查任务。 7 使用自定义规则集执行检查任务 配置代码检查任务使用带有自定义规则的自定义规则集。 8 查看检查结果 查看检查结果,确认使用的规则是否生效。
  • 创建代码检查任务 在代码检查任务列表页,单击“新建任务”,按照如下表格配置参数。 表3 代码检查任务参数说明 参数 说明 归属项目 创建代码检查任务所属项目中创建的项目名称“Scrum01”。默认填写,无需配置。 代码源 选择需要检查的代码来源。选择“Repo”。 任务名称 代码检查任务名称,可自定义。例如:CheckTask01。 仓库 选择创建CodeArts Repo代码仓中创建的代码仓“Repo01”。 分支 保持默认“mater”即可。 检查语言 选择“Java”。 单击“新建任务”,完成代码检查任务的创建。
  • 产品优势 存储容灾服务具有以下优势: 便捷的业务恢复方案 存储容灾服务提供集中的控制台,您可以通过管理控制台配置和管理服务器复制,执行切换和容灾演练等操作。 服务器复制 您可以创建从生产站点至容灾站点的复制。 按需复制 您可以将服务器按需复制至另一个可用区,免除您维护另一个数据中心的成本和复杂度。 不感知应用 运行在服务器上的任何应用都支持被复制。 RPO目标 存储容灾服务为云服务器提供异步复制,恢复点目标(RPO)为秒级。 RTO目标 恢复时间目标(RTO)为从生产站点发起切换或故障切换操作起,至容灾站点的服务器开始运行为止的一段时间,不包括手动操作DNS配置、安全组配置或执行客户脚本等任何时间,正常情况下,SDRS的RTO小于30分钟。 保持崩溃一致性 保证基于主机的异步复制,您容灾站点的数据与生产站点的数据保持崩溃一致性(存储容灾服务可以保证崩溃一致性,不能保证应用一致性)。 在不中断业务的情况下进行容灾演练 支持在线一键式容灾演练,通过容灾演练,模拟真实故障恢复场景,制定应急恢复预案,当真实故障发生时,通过预案快速恢复业务,提高业务连续性。 灵活的故障切换 生产站点发生故障时,可一键式执行切换操作,在容灾站点自动购买、部署、拉起云服务器,并挂载包含最新数据的容灾盘,仅需用户少量配置即可恢复业务。 高性价比:业务正常情况下,容灾端不启动云服务器,用户只需要支付少量的OBS服务费用以及容灾站点云硬盘费用即可。 部署简单:Agent在线安装,生产业务不中断,部署简单快捷。
  • 存储容灾 存储容灾服务(Storage Disaster Recovery Service)是一种为弹性云服务器(Elastic Cloud Server,E CS )和云硬盘(Elastic Volume Service,EVS)等服务提供容灾的服务。通过主机层复制、数据冗余和缓存加速等多项技术,提供给用户高级别的数据可靠性以及业务连续性,简称存储容灾。 存储容灾服务有助于保护业务应用,将弹性云服务器的数据、配置信息复制到容灾站点,并允许业务应用在生产站点云服务器停机期间在容灾站点云服务器上启动并正常运行,从而提升业务连续性。
  • 容灾与备份 容灾和备份具有以下区别: 容灾主要应对数据中心软硬件故障或重大自然灾害,生产站点和容灾站点之间通常会保持一定的安全距离,支持同城或异地;备份主要针对人为误操作、病毒感染、逻辑错误等因素,用于业务系统的数据恢复,数据备份一般在同一数据中心进行。 容灾系统不仅保护数据,更重要的目的在于保证业务的连续性;而数据备份系统只保护不同时间点版本数据的可恢复。一般首次备份为全量备份,所需的备份时间会比较长,而后续增量备份则在较短时间内就可完成。 容灾可实现低至秒级的RPO;备份可设置一天最多24个不同时间点的自动备份策略,后续可将数据恢复至不同的备份点。 故障情况下(例如地震、火灾、数据中心故障),容灾系统的切换时间一般为分钟级;而备份系统的恢复时间可能几小时到几十小时。
  • 同步复制 表3 同步复制支持的操作系统版本 OS类型 OS版本 位数 Windows Windows Server 2008 R2 64 Windows Server 2012 R2 64 Windows Server 2016 64 RedHat Red Hat Enterprise Linux 6.10 64 Red Hat Enterprise Linux 7.5 64 CentOS CentOS 6.5 64 CentOS 6.8 64 CentOS 6.9 64 CentOS 7.2 64 CentOS 7.3 64 CentOS 7.4 64 SUSE SUSE Enterprise 12 SP2 64 Ubuntu Ubuntu 16.04 server 64
  • 异步复制 表1 异步复制支持的操作系统版本 OS类型 OS版本 内核版本 位数 CentOS 7.2 3.10.0-327.el7.x86_64 3.10.0-1127.19.1.el7.x86_64 3.10.0-1160.6.1.el7.x86_64 64 7.3 3.10.0-514.el7.x86 64 64 7.4 3.10.0-693.el7.x86 64 64 7.5 3.10.0-862.el7.x86 64 64 7.6 3.10.0-957.el7.x86_64 3.10.0-1160.6.1.el7.x86_64 64 7.7 3.10.0-1062.el7.x86_64 64 7.9 3.10.0-1160.el7.x86_64 64 Redhat 7.4 3.10.0-693.el7.x86_64 64 7.9 3.10.0-1160.el7.x86_64 64 8.6 4.18.0-372.9.1.el8.x86_64 64 8.8 4.18.0-477.10.1.el8_8.x86_64 64 Windows windows server 2016 - 64 windows server 2019 - 64
  • 混合云容灾约束与限制 支持容灾上云的VMware版本包括VMware vSphere 6.7和VMware vSphere 7.0。 当前仅支持对接ESXi实现VMware主机容灾上云,且暂不支持容灾回切。 为了获得更优的性能和操作体验,仅支持表2所列经过兼容性测试的操作系统执行容灾恢复。 暂时只支持系统盘组了单盘LVM的服务器云上恢复,暂不支持多盘LVM。 容灾带宽建议不低于100Mbits,VMware容灾上云的主机对应磁盘大小建议是整十数GB。 操作系统类型为Linux,需要设置虚拟机参数:disk.EnableUUID TRUE。 VMware的虚拟机磁盘只支持SCSI类型。 表2 恢复至云上服务器支持的操作系统 操作系统类型 版本范围 Windows Windows Server 2016 Windows Server 2019 CentOS CentOS 7.2 CentOS 7.6
  • 产品基本概念 表1 公共概念 概念 说明 生产站点 正常情况下承载业务的数据中心机房,可以独立运行,对业务的正常运作起到直接支持作用。对于异步复制,生产站点指的是用户的本地数据中心、租户的服务器云主机所在的位置。对于同步复制,生产站点在创建保护组时指定,即租户的服务器所在的位置。 容灾站点 正常情况下不直接承载业务的机房,主要用于数据实时备份,在生产站点发生故障(计划性和非计划性)时可以通过执行容灾切换来接管业务,地理上不一定与业务管理中心接近,可以在同一个城市,也可以在不同的城市。 保护组 用于管理一组需要复制的服务器。一个保护组可以管理一个虚拟私有云下的服务器,租户拥有多个虚拟私有云时则需要创建多个保护组。 保护实例 一对拥有复制关系的服务器。保护实例仅属于一个特定的保护组,因此这对服务器所在位置与保护组的生产站点或容灾站点相同。 VBD VBD(Virtual Block Device)是云硬盘磁盘模式的一种。云硬盘的磁盘模式默认为VBD类型。VBD类型的云硬盘只支持简单的SCSI读写命令。适用于企业的日常办公应用以及开发测试等场景。 SCSI SCSI(Small Computer System Interface)是云硬盘磁盘模式的一种。SCSI类型的云硬盘支持SCSI指令透传,允许云服务器操作系统直接访问底层存储介质。除了简单的SCSI读写命令,SCSI类型的云硬盘还可以支持更高级的SCSI命令,例如持久锁预留,适用于通过锁机制保障数据安全的集群应用场景。 RPO 恢复点目标,一种业务切换策略,是数据丢失最少的容灾切换策略。以数据恢复点为目标,确保容灾切换所使用的数据为最新的备份数据。 RTO 恢复时间目标,为使中断对业务所带来的冲击最小化,关键业务从中断时间点恢复到预定可接受水平上的目标时间。具体体现为,从生产站点发起切换或故障切换操作起,至容灾站点的服务器开始运行为止的一段时间,不包括手动操作DNS配置,安全组配置或执行客户脚本等任何时间,RTO小于30分钟。 容灾演练 为了确保一旦发生故障切换后,容灾机能够正常接管业务而进行的操作。 通过容灾演练,模拟真实故障恢复场景,制定应急恢复预案,当真实故障发生时,通过预案快速恢复业务,提高业务连续性。 表2 异步复制 概念 说明 站点复制对 一对拥有复制关系的生产站点和容灾站点。 云容灾网关 云容灾网关将生产站点所有被容灾的服务器上的数据进行汇聚压缩,并同步到容灾站点。 代理客户端 代理客户端将所在服务器上的数据传输到云容灾网关。 开启保护 生产业务位于生产站点时,数据同步停止后可执行此操作,用来开始数据同步。 切换 将业务从用户的生产站点切换到容灾站点。切换后数据同步中断,保护实例的状态是切换完成。 切回 切换完成后,当前生产业务位于容灾站点,通过切回操作,可将生产业务从容灾站点切回到生产站点。切回完成后,数据不再进行同步。 反向重保护 切换完成后,数据不会自动反向同步(容灾站点到生产站点),保护实例处于停止保护状态,如需开始反向数据同步,需要进行反向重保护操作。 重保护 切回完成后,数据不会自动同步(生产站点到容灾站点),保护实例处于停止保护状态,如需开始数据同步,需要进行重保护操作。 停止保护 生产业务位于生产站点时,数据同步中或者同步完成后可执行此操作,用来停止数据同步。 表3 同步复制概念 概念 说明 复制对 一对拥有复制关系的云硬盘。复制对仅属于一个特定的保护组,且可以挂载给同一个保护组下的保护实例。 切换 临时关闭生产站点服务器进行计划性迁移,可将业务从生产站点可用区切换到容灾站点可用区。切换后容灾方向更改为从容灾站点到生产站点,容灾站点可用区内的服务器和云硬盘等资源可启动。 故障切换 系统将生产站点的业务强制置为不可启动,将容灾站点的业务设置为可启动。该动作影响保护组内的所有保护实例,故障切换后,租户需要启动容灾站点的服务器。故障切换后,保护组进入故障切换状态,并中断数据同步,需要通过重保护来恢复数据同步。 开启保护 在保护组创建后、数据同步停止后可执行此操作,用来开始数据复制,此时界面上有复制进度的提示,该动作影响保护组内的所有保护实例、复制对。 单击“开启保护”,保护组状态变为“同步中”,此时,保护组不允许停止保护。 重保护 在故障切换后可执行此操作,用来开始数据复制,此时界面上有复制进度的提示,该动作影响保护组内的所有保护实例、复制对。 故障切换操作后,单击“重保护”,保护组的状态变为“重新开启保护中”,此时,保护组不允许停止保护。 停止保护 在保护组的数据同步完成后可执行此操作,用来停止数据复制。停止完成后,保护状态变为可用。 挂载复制对 将一个复制对挂载给一个保护实例,等价于同时为保护实例中的两个服务器挂载复制对中的两个云硬盘。 卸载复制对 从一个保护实例中卸载一个复制对,等价于同时从保护实例中的两个服务器中卸载复制对中的两个云硬盘。 容灾方向 创建保护组时,选择的生产站点可用区到容灾站点可用区的数据复制方向。 切换操作会改变保护组的容灾方向,将生产站点可用区的业务切换到容灾站点可用区,容灾站点可用区的业务切换到生产站点可用区。 保护组状态 同步复制对某一个保护组进行创建、删除、开启保护、停止保护、切换、故障切换等操作之后的状态,表示该保护组资源的状态。 具体请参见《存储容灾服务接口参考》附录中的“保护组状态”。 同步状态 保护组的生产站点可用区与容灾站点可用区之间的数据复制状态。 所属VPC VPC即虚拟私有云,可以方便地管理、配置内部网络,进行安全、快捷的网络变更,不同虚拟私有云里面的服务器网络默认不通。所属VPC即保护组所在的虚拟私有云。 父主题: 基本概念
  • 响应消息 响应参数 参数 参数类型 取值范围 描述 error_code String 最大长度:16 状态码。具体请参考状态码。只有失败才会返回这个参数。 error_msg String 最大长度:1024 错误描述信息。只有失败才会返回这个参数。 domain_id String 最大长度:64 客户ID。 只有成功或者错误码在CBC.99000050时才会返回。 domain_name String 最大长度:64 客户的华为云账号名。 若请求参数中传递了此参数值,此处返回的响应值与请求参数中取值一致。 若请求参数中未传递此参数值,此处返回的响应值为系统随机生成的32位字符串。 只有成功时或者错误码在CBC.99000050时才会返回。 响应示例 HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 Content-Length: length Date: response time { "domain_id": "06a7969058802f0c0f01c00b91846780", "domain_name": "a0d736359ada40aab6502d1a828c1809" }
  • 状态码 状态码4xx:由于明显的客户端错误(例如,格式错误的请求语法、参数错误等),华为云会返回4xx错误码,请及时检查请求消息的正确性,重新发起请求。 状态码5xx:由于华为云系统原因,导致无法完成明显有效请求的处理,可及时联系华为云客服处理。 HTTP状态码 错误码 错误描述 400 CBC.0100 参数错误。 请根据“请求消息”中请求参数的描述检查输入的参数是否满足条件。 400 CBC.0101 参数无效。 400 CBC.50010059 一级经销商不允许关联子客户。 400 CBC.50010065 该伙伴是云经销商,其关联的总经销商已经摘牌退出,无法拓客创建关联关系。 400 CBC.99000038 客户登录名已经存在。 400 CBC.99000029 客户手机号已经存在。 400 CBC.99000031 客户登录名格式不合法。 400 CBC.5017 客户手机号格式不合法。 400 CBC.99000039 xaccountId重复。 400 CBC.99000004 客户向伙伴授权时发生异常。 400 CBC.99000030 手机号注册数量超过上限。 400 CBC.99000036 客户密码格式不合法。 400 CBC.99000037 您没有操作该云经销商的权限。 500 CBC.99000050 伙伴和子客户关联结果查询超时,请使用查询客户列表确认最终关联结果。 400 CBC.99000051 该手机号/邮箱已被华为报备,无法创建客户。 400 CBC.99004008 有验证码,但是已经失效。 400 CBC.99004009 有验证码,但是校验失败次数已经大于3。 400 CBC.99004010 校验客户端输入的验证码错误。 400 CBC.99005035 测试伙伴账号不能使用该接口。 401 CBC.0154 token非法/过期。 403 CBC.0151 访问拒绝。 500 CBC.0999 其他错误。 400 CBC.50010085 该伙伴企业目前处于受限状态,无法拓客创建关联关系。 400 CBC.50010086 该伙伴是云经销商,其关联的总经销商企业目前处于受限状态,无法拓客创建关联关系。
  • 请求消息 请求参数 参数 是否必选 参数类型 取值范围 描述 xaccount_id 是 String 最大长度:128 伙伴销售平台的用户唯一标识,该标识的具体值由伙伴分配。 xaccount_type 是 String 最大长度:64 华为分给合作伙伴的平台标识。 该标识的具体值由华为分配。获取方法请参见如何获取xaccountType的取值。 domain_name 否 String [5-32] 客户的华为云账号名。 如果为空,随机生成。 不能以“op_”或“shadow_”开头且不能全为数字。 校验长度(5到32位)和规则^([a-zA-Z_-]([a-zA-Z0-9_-])*)$。 此参数不携带或携带值为空串或携带值为null时,随机生成。 mobile_phone 否 String 最大长度:32 手机号。 目前系统只支持中国的手机号。 示例:13XXXXXXXXX 此参数不携带或携带值为null时,不被赋值;携带值为空串时,赋值为空串。 verification_code 否 String [6] 验证码。 请调用“发送验证码”接口获取。 如果手机号不存在,则不需要输入验证码。 此参数不携带或携带值为null时,不做处理;不支持携带值为空串。 password 否 String 长度:[8-32] 密码规则如下: 至少包含以下四种字符中的两种: 大写字母、小写字母、数字、特殊字符; 不能和账号名或倒序的账号名相同; 不能包含手机号。 如果为空,用户没有密码,则不能直接在华为云登录,只能通过伙伴系统SSO方式跳转到华为云。 此参数不携带或携带值为null时,密码随机生成;不支持携带值为空串。 is_close_market_ms 否 String 最大长度:10 是否关闭营销消息的发送。 true:关闭 false:不关闭(默认) 此参数不携带或携带值为空串或携带值为null时,赋值为false。 indirect_partner_id 否 String 最大长度:64 云经销商ID。获取方法请参见查询云经销商列表。 如果需要创建云经销商的子客户,必须携带该字段。除此之外,此参数不携带或携带值为空串或携带值为null,不做处理。 include_association_result 否 Boolean - 是否返回子客户的关联结果。 true:返回子客户和伙伴的关联结果 false:不返回子客户和伙伴的关联结果 默认值为false。 此参数不携带或携带值为空串或携带值为null时,赋值为false。 请求示例 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers HTTP/1.1 Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ { "domain_name": "test", "mobile_phone": "188****8888", "verification_code": "253***", "xaccount_id": "35rey****", "xaccount_type": "***_IDP", "password": "*******", "is_close_market_ms": "true", "indirect_partner_id": "a0d736********aab6502d1a828c1809", "include_association_result": "false" }
  • 功能介绍 在伙伴销售平台创建客户时同步创建华为云账号,并将客户在伙伴销售平台上的账号与华为云账号进行映射。同时,创建的华为云账号与伙伴账号关联绑定。 华为云总经销商(一级经销商)可以注册云经销商(二级经销商)的子客户。注册完成后,子客户可以自动和云经销商绑定。 调用该接口为客户创建华为云账号后,如果想从合作伙伴销售平台跳转至华为云官网,还需要进行SAML认证,具体请参见“Web UI方式”中的“SAML认证”。 如果创建的时候不输入手机号,那么客户将无法收到华为云发出的任何提醒短信,需要客户自己登录到华为云平台补充手机号。 调用“创建客户”接口时,华为云会同步创建华为云客户账号,将客户ID及账号名返回给伙伴平台,然后华为云异步完成客户与伙伴的关联。伙伴与客户的关联结果可通过“查询客户列表”查询。 默认会创建代售模式的客户。
  • 接口约束 该接口只允许使用合作伙伴AK/SK或者Token调用。 合作伙伴销售平台创建客户的页面必须体现华为云用户协议和隐私政策声明。 此接口会为客户创建委托授权,用于将合作伙伴的Token置换成客户Token,即允许合作伙伴以客户的身份做资源开通、查询等相关操作。因此合作伙伴销售平台在调用此接口前请先获得客户授权说明。 如果创建客户的时候输入手机号,在调用该接口前,请先调用“发送验证码”接口获取验证码。 自2022年8月1日起,密码长度至少为8个字符。
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为 IAM 的终端节点,可以从地区和终端节点获取。 响应示例如下,例如DataArts Insight服务部署的区域为“cn-north-4”,应消息体中查找“name”为“cn-north-4”,其中projects下的“id”即为项目ID。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取IAM用户Token接口,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。 最小长度:0 最大长度:8192 表3 请求Body参数 参数 是否必选 参数类型 描述 user_name_list 是 Array of strings 用户名称列表。 最小长度:0 最大长度:512 数组长度:1-128 sys_role 是 Integer 通行证角色: 0未激活; 1通用用户; 2只读用户。 最小值:0 最大值:128
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "xxxxxxxx", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • 状态码 正常 返回值 说明 200 请求成功。 异常 状态码 编码 说明 400 Bad Request 服务器不能或不会处理该请求。 401 Unauthorized 当前请求需要用户验证。 403 Forbidden 服务器拒绝执行该请求。 404 Not Found 服务器无法找到被请求的资源。 418 I'm a teapot 请求参数错误,服务器无法处理该请求。 500 Internal Server Error 请求失败,服务异常。 父主题: 附录
  • 响应消息体(可选) 响应消息体通常以结构化格式返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。 对于获取用户Token接口,返回如下消息体。为篇幅起见,这里只展示部分内容。 { "token": { "expires_at": "2019-02-13T06:52:13.855000Z", "methods": [ "password" ], "catalog": [ { "endpoints": [ { "region_id": "xxxxxxxx", ...... 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 { "error": { "message": "The request you have made requires authentication.", "title": "Unauthorized" } } 其中,error_code表示错误码,error_msg表示错误描述信息。
  • 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....
  • 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不同,使用时请注意。
  • 请求URI 请求URI由如下部分组成。 {URI-scheme} :// {Endpoint} / {resource-path} ? {query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 URI-scheme: 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint: 指定承载REST服务端点的服务器 域名 或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点获取。 例如IAM服务在“华北-北京一”区域的Endpoint为“iam.cn-north-1.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-1.myhuaweicloud.com),并在获取用户Token的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。 https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens 图1 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,同一个服务的Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码,xxxxxxxxxxxxxxxxxx为project的名称,如“cn-north-1”,您可以从地区和终端节点获取,对应地区和终端节点页面的“区域”字段的值。 scope参数定义了Token的作用域,下面示例中获取的Token仅能访问project下的资源。您还可以设置Token作用域为某个账号下所有资源或账号的某个project下的资源,详细定义请参见获取用户Token。 POST https://iam.cn-north-1.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-1.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-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
  • API概览 通过使用漏洞管理服务提供的接口,您可以完整的使用漏洞管理服务的所有功能。 类型 说明 网站域名管理 网站域名相关接口,包含创建域名、获取域名、删除域名,以及更新或获取域名配置。 网站任务管理 网站任务相关接口,包含创建扫描任务并启动、获取扫描任务详情、取消或重启扫描任务和获取域名的历史扫描任务。 网站报告管理 网站报告相关接口,包含获取扫描结果、业务风险扫描结果,以及更新漏洞的误报状态。 主机管理 主机相关接口,包含创建主机,获取主机,删除主机。 主机任务管理 主机任务相关接口,包含启动或停止扫描任务。 主机报告管理 主机报告相关接口,包含主机扫描结果获取。 主机组管理 主机组相关接口,包含主机组创建,获取,删除。
  • 基本概念 账号 用户注册时的账号,账号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于账号是付费主体,为了确保账号安全,建议您不要直接使用账号进行日常管理工作,而是创建用户并使用他们进行日常管理工作。 用户 由账号在IAM中创建的用户,是云服务的使用人员,具有身份凭证(密码和访问密钥)。 在我的凭证下,您可以查看账号ID和用户ID。通常在调用API的鉴权过程中,您需要用到账号、用户和密码等信息。 区域(Region) 从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 详情请参见区域和可用区。 可用区(AZ,Availability Zone) 一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 项目 区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您账号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默认的项目中创建子项目,并在子项目中创建资源,然后以子项目为单位进行授权,使得仅能访问特定子项目中资源,使得资源的权限控制更加精确。 图1 项目隔离模型 父主题: 使用前必读
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 items Array of HGHost objects 主机列表 数组长度:0 - 100 total Integer 主机总数 最小值:0 最大值:100 表5 HGHost 参数 参数类型 描述 auth_status Integer 主机授权状态: -1 未知 0 连接成功 1 不可达 2 登录失败 枚举值: -1 0 1 2 group_id String 主机组id 最小长度:0 最大长度:64 id String 主机id 最小长度:0 最大长度:64 ip String 主机ip 最小长度:0 最大长度:15 jumper_server_id String 跳板机id 最小长度:0 最大长度:64 last_scan_id String 最后一次扫描的id 最小长度:0 最大长度:64 last_scan_info ScanInfoDetail object name String 主机名 最小长度:0 最大长度:64 os_type String 主机操作系统类型 最小长度:0 最大长度:50 smb_credential_id String smb_credential_id 最小长度:0 最大长度:64 ssh_credential_id String ssh授权id 最小长度:0 最大长度:64 表6 ScanInfoDetail 参数 参数类型 描述 create_time Long 扫描任务创建时间 最小值:0 最大值:9223372036854775807 enable_weak_passwd Boolean 弱密码检查 end_time Long 扫描任务结束时间 最小值:0 最大值:9223372036854775807 progress Integer 任务进度 最小值:0 最大值:100 reason String 任务描述 最小长度:0 最大长度:10240 status Integer 扫描任务状态: 0 运行中 1 已完成 2 手动取消 3 等待中 4 扫描失败 5 等待定时调度 最小值:0 最大值:5 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 401 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256 状态码: 418 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:0 最大长度:50 error_msg String 错误描述 最小长度:0 最大长度:256
共100000条