华为云用户手册

  • 步骤六:将E CS 添加至ELB后端服务器组 单击上述创建的独享型负载均衡ELB-Test名称。 切换到“监听器”页签,单击上述所创建的HTTP监听器。 切换至右边的“后端服务器组”页签,单击“跨VPC后端”。 图11 跨VPC后端 单击“添加跨VPC后端”,设置相关参数,完成后单击“确定”。详见《弹性负载均衡用户指南》。 跨VPC后端IP:172.17.0.145(ECS-Test的私网IP) 后端端口:填写业务端口 权重:根据需要设置 图12 添加跨VPC后端
  • 资源和成本规划 资源的实际费用以华为云管理控制台显示为准。 表1 资源规划 资源 资源名称 资源说明 数量 每月费用(元) VPC VPC-Test-01 创建独享型负载均衡(ELB-Test)所在VPC: 172.18.0.0/24 1 00.00 VPC-Test-02 服务器(ECS-Test)所在的VPC: 172.17.0.0/24 1 00.00 对等连接 Peering-Test 在ELB所在的VPC和云上其他VPC之间建立对等连接 本端VPC网段:172.18.0.0/24 对端VPC网段:172.17.0.0/24 1 00.00 路由表 Route-VPC-Test-01 创建对等连接路由,所属VPC:VPC-Test-01 目的地址:172.17.0.0/24 1 00.00 Route-VPC-Test-02 创建对等连接路由,所属VPC:VPC-Test-02 目的地址:172.18.0.0/24 1 00.00 ELB ELB-Test 独享型负载均衡 1 400 本例使用的是华东-上海一, 应用型(HTTP/HTTPS) | 小型 I 网络型(TCP/UDP) | 小型 I EIP EIP-Test 用于给ELB-Test绑定的弹性公网IP 119.3.233.52 1 115 本例使用的是华东-上海一,带宽5M。 ECS ECS-Test ECS所属VPC:VPC-Test-02 私网IP:172.17.0.145 1 267.78 本例使用的是华东-上海一,c7.large.2,CentOS7.6操作系统的云服务器。包含系统盘价格。
  • 基于HTTP请求头实现新旧版本应用平滑过渡 公司的应用分为中文和英文两个语言,通过配置转发规则为“HTTP请求头”的高级转发策略,实现将来自客户端的英文请求转发至旧版本应用上,将来自客户端的中文请求转发至新版本应用上。以此种方式运行一段时间后,确认新版本应用无问题后,再将所有请求全部切换至新版本应用。 图8 基于HTTP请求头实现新旧版本应用平滑过渡 单击上述创建的独享型负载均衡ELB-Test名称。 切换至“监听器”页签,单击上述创建的HTTP监听器名称。 切换至右边的“转发策略”页面,单击“添加转发策略”。 转发至旧版本应用:在下拉列表中选择“HTTP请求头”,键是“Accept-Language”,值是“en-us”,动作选择“转发至后端服务器组”,后端服务器组选择“Server_Group-Test01”。 图9 基于HTTP请求头将部分请求转发至旧版本应用上 单击“保存”。 参考步骤3和步骤4再添加一个转发策略,实现将请求转发至新版本应用上。 转发至新版本应用:在下拉列表中选择“HTTP请求头”,键是“Accept-Language”,值是“zh-cn”,动作选择“转发至后端服务器组”,后端服务器组选择“Server_Group-Test02”。 图10 基于HTTP请求头将部分请求转发至新版本应用上
  • 基于查询字符串实现新旧版本应用平滑过渡 公司的应用部署在区域1和区域2,通过配置转发规则为“查询字符串”的高级转发策略,实现将客户端对区域1业务的请求转发至旧版本应用上,将客户端对区域2业务的请求转发至新版本应用上。以此种方式运行一段时间后,确认新版本应用无问题后,再将所有请求全部切换至新版本应用。 图11 基于查询字符串实现新旧版本应用平滑过渡 独享型负载均衡支持跨区域、跨VPC添加后端服务器。 该方案需要先使用云连接服务连通区域1和区域2,然后再使用独享型ELB的跨VPC后端功能将区域1和区域2中的服务器分别添加至ELB的后端服务器组01和后端服务器02中。 单击上述创建的独享型负载均衡ELB-Test名称。 在“监听器”页签,单击上述创建的HTTP监听器名称。 切换至右边的“转发策略”页面,单击“添加转发策略”。 转发至旧版本应用:在下拉列表中选择“查询字符串”,键是“region”,值是“region01”,动作选择“转发至后端服务器组”,后端服务器组选择“Server_Group-Test01”。 图12 基于查询字符串将部分请求转发至旧版本应用上 单击“保存”。 参考步骤3和步骤4再添加一个转发策略,实现将请求转发至新版本应用上。 转发至新版本应用:在下拉列表中选择“查询字符串”,键是“region”,值是“region02”,动作选择“转发至后端服务器组”,后端服务器组选择“Server_Group-Test02”。 图13 基于查询字符串将部分请求转发至新版本应用上
  • 操作流程 图1 操作流程图 表1 资源规划 资源名称 资源类型 说明 ELB-Test 独享型ELB 独享型ELB支持高级转发策略,因此需创建独享型ELB实例。 Server_Group-Test01 后端服务器组 用于管理部署了旧版本业务的ECS。 Server_Group-Test02 后端服务器组 用于管理部署了新版本业务的ECS。 ECS01 弹性云服务器 上面部署了旧版本业务,添加至Server_Group-Test01。 ECS02 弹性云服务器 上面部署了旧版本业务,添加至Server_Group-Test01。 ECS03 弹性云服务器 上面部署了旧版本业务,添加至Server_Group-Test01。 ECS04 弹性云服务器 上面部署了新版本业务,添加至Server_Group-Test02。 ECS05 弹性云服务器 上面部署了新版本业务,添加至Server_Group-Test02。 ECS06 弹性云服务器 上面部署了新版本业务,添加至Server_Group-Test02。 本最佳实践中,独享型ELB和ECS均在同一VPC中。在实际应用中,如果您的ECS和ELB不在同一VPC中,可以跨VPC添加ECS至ELB的后端服务器组中,详细请参考跨VPC添加服务器至负载均衡器。
  • 创建后端服务器组并添加后端服务器 单击上述创建的独享型负载均衡ELB-Test名称。 在监听器页签,单击右上角的“创建后端服务器组”。 名称:Server_Group-Test01 后端协议:HTTP 其他参数根据需要设置。 参考步骤2再添加后端服务器组Server_Group-Test02。 图4 添加后端服务器组 单击后端服务器组Server_Group-Test01名称,添加ECS01、ECS02、ECS03至Server_Group-Test01。 单击后端服务器组Server_Group-Test02名称,添加ECS04、ECS05、ECS06至Server_Group-Test02。
  • 基于HTTP请求方法实现新旧版本应用平滑过渡 通过配置转发规则为“HTTP请求方法”的高级转发策略,实现将来自客户端的GET和DELETE请求转发至旧版本应用上,将来自客户端的POST和PUT请求转发至新版本应用上。以此种方式运行一段时间后,确认新版本应用无问题后,再将所有请求全部切换至新版本应用。 图5 基于HTTP请求方法实现新旧版本应用平滑过渡 单击上述创建的独享型负载均衡ELB-Test名称。 在“监听器”页签,单击上述创建的HTTP监听器名称。 切换至右边的“转发策略”页面,单击“添加转发策略”。 转发至旧版本应用:在下拉列表中选择“HTTP请求方法”,选择“GET”和“DELETE”,动作选择“转发至后端服务器组”,后端服务器组选择“Server_Group-Test01”。 图6 基于HTTP请求方法将部分请求转发至旧版本应用上 单击“保存”。 参考步骤3和步骤4再添加一个转发策略,实现将请求转发至新版本应用上。 转发至新版本应用:在下拉列表中选择“HTTP请求方法”,选择“PUT”和“POST”,动作选择“转发至后端服务器组”,后端服务器组选择“Server_Group-Test02”。 图7 基于HTTP请求方法将部分请求转发至新版本应用上
  • 资源和成本规划 资源的实际费用以华为云管理控制台显示为准。 表1 资源规划 资源 资源名称 资源说明 数量 每月费用(元) VPC vpc-peering 创建独享型负载均衡(ELB-Test)和ECS-Test所在VPC: 规划网段:10.1.0.0/16 1 00.00 对等连接 Peering-Test 在ELB所在的VPC和云上其他VPC之间建立对等连接 本端VPC网段:10.1.0.0/16 对端VPC网段:任选 1 00.00 路由表 Route-VPC-Test-01 创建对等连接路由,所属VPC:VPC-Test-01 目的地址:10.1.0.0/16 1 00.00 ELB ELB-Test 独享型负载均衡(ELB-Test) 私网IP:10.1.0.9 1 400 本例使用的是华东-上海一, 应用型(HTTP/HTTPS) | 小型 I 网络型(TCP/UDP) | 小型 I EIP EIP-Test 用于给ELB-Test绑定的弹性公网IP 120.46.131.153 1 115 本例使用的是华东-上海一,带宽5M。 ECS ECS-Test ECS所属VPC:vpc-peering 私网IP:10.1.0.56 1 267.78 本例使用的是华东-上海一,c7.large.2,CentOS7.6操作系统的云服务器。包含系统盘价格。
  • 步骤七:验证通过跨VPC后端功能添加同VPC后端服务器组是否成功 单击上述创建的独享型负载均衡ELB-Test操作列的“更多”。 选择“绑定IPv4公网IP”,给ELB-Test绑定一个弹性公网IP(EIP-Test:120.46.131.153)。 图10 ELB绑定EIP 使用浏览器访问“http://120.46.131.153/”,显示如下页面,说明本次访问请求被ELB实例转发到后端服务器“ECS-Test”上,“ECS-Test”正常处理请求并返回请求的页面。 图11 验证通过跨VPC后端功能添加同VPC后端服务器是否成功
  • 步骤三:添加对等连接路由 在虚拟私有云控制台单击左侧“路由表”。 单击右上角的“创建路由表”。 根据表1创建路由表Route-VPC-Test-01,完成后单击“确定”。详见《虚拟私有云用户指南》。 路由表名称:Route-VPC-Test-01 所属VPC:vpc-peering 目的地址:10.1.0.0/16 下一跳类型:对等连接 下一跳:Peering-Test 图5 创建路由表Route-VPC-Test-01
  • 步骤六:将ECS添加至ELB后端服务器组 单击上述创建的独享型负载均衡ELB-Test名称。 切换到“监听器”页签,单击上述所创建的HTTP监听器。 切换至右边的“后端服务器组”页签,单击“跨VPC后端”。 单击“添加跨VPC后端”,设置相关参数,完成后单击“确定”。详见《弹性负载均衡用户指南》。 跨VPC后端IP:10.1.0.56(ECS-Test的私网IP) 后端端口:填写业务端口 权重:根据需要设置 图9 添加跨VPC后端
  • 步骤七:放行独享引擎回源IP 网站以“独享模式”成功接入WAF后,所有网站访问请求将先经过负载均衡器然后流转到独享引擎实例进行监控,经独享引擎实例过滤后再返回到源站服务器,流量经独享引擎实例返回源站的过程称为回源。 在服务器看来,接入WAF后所有源IP都会变成独享引擎实例的回源IP(即独享引擎实例对应的子网IP),以防止源站IP暴露后被黑客直接攻击。 源站服务器上的安全软件很容易认为独享引擎的回源IP是恶意IP,有可能触发屏蔽WAF回源IP的操作。一旦WAF的回源IP被屏蔽,WAF的请求将无法得到源站的正常响应,因此,网站以“独享模式”接入WAF防护后,您需要在源站服务器上设置放行创建的独享引擎实例对应的子网IP,不然可能会出现网站打不开或打开极其缓慢等情况。 详细操作步骤请参考回源到ELB。
  • 操作场景 HTTPS是加密数据传输协议,安全性高,如果您需要保证业务建立安全连接,可以通过负载均衡的HTTP重定向功能,将HTTP访问重定向至HTTPS。 该功能可以满足您如下需求,PC、手机浏览器等以HTTP请求访问Web服务,配置了HTTP访问重定向至HTTPS后,后端服务器返回HTTPS的响应。默认强制以HTTPS访问网页。 因为HTTP标准协议只支持GET和HEAD方法的重定向,所以设置了HTTP重定向至HTTPS后,POST和其他方法会被改为GET方法,这是客户端浏览器的行为,而非ELB修改的。如果您需要实现除GET和HEAD方法以外的访问方式,建议直接使用HTTPS方式进行访问。 HTTP重定向至HTTPS是指所有的HTTP请求都将转给HTTPS监听器处理为HTTPS请求,但HTTPS请求是通过HTTP被发送给后端服务器的。 HTTP监听器重定向至HTTPS监听器,HTTPS监听器所关联的后端服务器上不能再安装证书,否则会引起HTTPS请求不生效。
  • 使用场景 一般的HTTPS业务场景只对服务器做认证,因此只需要配置服务器的证书即可。某些关键业务(如银行支付),需要对通信双方的身份都要做认证,即双向认证,以确保业务的安全性。 此时,除了配置服务器的证书之外,还需要配置客户端的证书,以实现通信双方的双向认证功能。 本章节以自签名证书为例,介绍如何配置HTTPS双向认证。但是自签名证书存在安全隐患,建议客户使用 云证书管理服务 购买证书、或购买其他权威机构颁发的证书。
  • 使用OpenSSL制作CA证书 登录到任意一台安装有openssl工具的Linux机器。 创建工作目录并进入该目录。 mkdir ca cd ca 创建CA证书的openssl配置文件ca_cert.conf,内容如下: [ req ] distinguished_name = req_distinguished_name prompt = no [ req_distinguished_name ] O = ELB 创建CA证书私钥文件ca.key。 openssl genrsa -out ca.key 2048 图1 生成CA证书私钥文件 创建CA证书的csr请求文件ca.csr。 openssl req -out ca.csr -key ca.key -new -config ./ca_cert.conf 创建自签名的CA证书ca.crt。 openssl x509 -req -in ca.csr -out ca.crt -sha1 -days 5000 -signkey ca.key 图2 创建自签名CA证书
  • 使用CA证书签发客户端证书 登录到生成CA证书的服务器。 创建与CA平级的目录,并进入该目录。 mkdir client cd client 创建客户端证书的openssl配置文件client_cert.conf,内容如下: [ req ] distinguished_name = req_distinguished_name prompt = no [ req_distinguished_name ] O = ELB CN = www.test.com CN字段可以根据需求改为对应的域名、IP地址。 创建客户端证书私钥文件client.key。 openssl genrsa -out client.key 2048 图4 创建客户端证书私钥文件 创建客户端证书的csr请求文件client.csr。 openssl req -out client.csr -key client.key -new -config ./client_cert.conf 图5 创建客户端证书csr文件 使用CA证书签发客户端证书client.crt。 openssl x509 -req -in client.csr -out client.crt -sha1 -CAcreateserial -days 5000 -CA ../ca/ca.crt -CAkey ../ca/ca.key 图6 签发客户端证书 把客户端证书格式转为浏览器可识别的p12格式。 openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12 该命令执行时需要输入导出密码,请输入并记住该密码,在证书导入浏览器时需要使用。
  • 使用CA证书签发服务器证书 用户可以用权威CA签发的证书或者自签名的证书,这里以自签名证书为例说明如何创建服务器证书。 登录到生成CA证书的服务器。 创建与CA平级的目录,并进入该目录。 mkdir server cd server 创建服务器证书的openssl配置文件server_cert.conf,内容如下: [ req ] distinguished_name = req_distinguished_name prompt = no [ req_distinguished_name ] O = ELB CN = www.test.com CN字段可以根据需求改为服务器对应的域名、IP地址。 创建服务器证书私钥文件server.key。 openssl genrsa -out server.key 2048 创建服务器证书的csr请求文件server.csr。 openssl req -out server.csr -key server.key -new -config ./server_cert.conf 使用CA证书签发服务器证书server.crt。 openssl x509 -req -in server.csr -out server.crt -sha1 -CAcreateserial -days 5000 -CA ../ca/ca.crt -CAkey ../ca/ca.key 图3 签发服务器证书
  • 开发者联调权限 联调环境支持在项目下统一配置项目下各角色的默认权限,涉及的模块包括:集群(基础设施)、配置中心、服务模板、环境实例。 初始状态下,项目下各角色具有的开发者联调权限如下表所示: 表5 集群 角色 查看 创建 修改 删除 项目创建者 √ √ √ √ 项目经理 √ √ √ √ 开发人员 √ √ √ × 测试经理 √ √ √ × 测试人员 √ √ √ × 参与者 √ × × × 浏览者 √ × × × 运维经理 √ √ √ √ 产品经理 √ √ √ × 系统工程师 √ √ √ × Committer √ √ √ √ 表6 配置中心 角色 查看 创建 修改 删除 项目创建者 √ √ √ √ 项目经理 √ √ √ √ 开发人员 √ √ √ √ 测试经理 √ √ √ √ 测试人员 √ √ √ √ 参与者 √ × × × 浏览者 √ × × × 运维经理 √ √ √ √ 产品经理 √ √ √ √ 系统工程师 √ √ √ √ Committer √ √ √ √ 表7 服务模板 角色 查看 创建 修改 删除 项目创建者 √ √ √ √ 项目经理 √ √ √ √ 开发人员 √ √ √ × 测试经理 √ √ √ × 测试人员 √ √ √ × 参与者 √ × × × 浏览者 √ × × × 运维经理 √ √ √ √ 产品经理 √ √ √ √ 系统工程师 √ √ √ √ Committer √ √ √ √ 表8 环境实例 角色 查看 创建 修改 删除 运维 项目创建者 √ √ √ √ √ 项目经理 √ √ √ √ √ 开发人员 √ √ √ × √ 测试经理 √ √ √ × √ 测试人员 √ √ √ × √ 参与者 √ × × × × 浏览者 √ × × × × 运维经理 √ √ √ √ √ 产品经理 √ √ √ √ √ 系统工程师 √ √ √ √ √ Committer √ √ √ √ ×
  • 微服务发布权限 微服务发布支持在项目下统一配置项目下各角色的默认权限,涉及的模块包括:开发环境、测试环境、预发环境和生产环境。 初始状态下,不同环境项目下各角色的微服务发布权限如下表所示。 表1 开发环境 角色 查看 创建 修改 删除 执行 回滚 项目创建者 √ √ √ √ √ √ 项目经理 √ √ √ √ √ √ 开发人员 √ √ √ √ √ √ 测试经理 √ × × × × × 测试人员 √ × × × × × 参与者 √ × × × × × 浏览者 √ × × × × × 运维经理 √ √ √ √ √ √ 产品经理 √ √ √ √ √ √ 系统工程师 √ √ √ √ √ √ Committer √ √ √ √ √ √ 表2 测试环境 角色 查看 创建 修改 删除 执行 回滚 项目创建者 √ √ √ √ √ √ 项目经理 √ √ √ √ √ √ 开发人员 √ × × × × × 测试经理 √ √ √ √ √ √ 测试人员 √ √ √ √ √ × 参与者 √ × × × × × 浏览者 √ × × × × × 运维经理 √ √ √ √ √ √ 产品经理 √ × × × × × 系统工程师 √ × × × × × Committer √ √ √ √ √ √ 表3 预发环境 角色 查看 创建 修改 删除 执行 回滚 项目创建者 √ √ √ √ √ √ 项目经理 √ √ √ √ √ √ 开发人员 √ × × × × × 测试经理 √ × × × × × 测试人员 √ × × × × × 参与者 × × × × × × 浏览者 × × × × × × 运维经理 √ √ √ √ √ √ 产品经理 √ × × × × × 系统工程师 √ × × × × × Committer √ √ √ √ √ √ 表4 生产环境 角色 查看 创建 修改 删除 执行 回滚 项目创建者 √ √ √ √ √ √ 项目经理 √ √ √ √ √ √ 开发人员 × × × × × × 测试经理 × × × × × × 测试人员 × × × × × × 参与者 × × × × × × 浏览者 × × × × × × 运维经理 √ √ √ √ √ √ 产品经理 × × × × × × 系统工程师 √ × × × × × Committer √ √ √ √ √ √
  • 流水线权限 初始状态下,项目下各角色具有的流水线权限如下表所示: 角色 查看 创建 执行 修改 删除 分组 项目创建者 √ √ √ √ √ √ 项目经理 √ √ √ √ √ √ 开发人员 √ √ √ × × × 测试经理 √ × × × × × 测试人员 √ × × × × × 参与者 √ × × × × × 浏览者 √ × × × × × 运维经理 √ × × × × × 产品经理 √ × × × × × 系统工程师 √ √ √ √ √ √ Committer √ √ √ × × × 复制流水线需要同时具有创建流水线及修改源流水线的权限。 流水线的角色权限默认继承项目下各角色的流水线权限,并与项目下各角色的流水线权限保持联动,直到用户在流水线中修改了该流水线的角色权限为止。 流水线创建者默认拥有其创建的流水线的全部权限。
  • 策略权限 初始状态下,项目下各角色具有的项目级策略权限如下表所示: 角色 查看 创建 修改 删除 项目创建者 √ √ √ √ 项目经理 √ √ √ √ 开发人员 √ √ √ √ 测试经理 √ × × × 测试人员 √ × × × 参与者 √ × × × 浏览者 √ × × × 运维经理 √ × × × 产品经理 √ × × × 系统工程师 √ √ √ √ Committer √ √ √ √ 复制策略需要同时具有创建策略及修改源策略的权限。
  • 请求示例 解析CSR,请求头中的X-Auth-Token字段需要填写token,且该token需要具有本API的访问权限。 POST https://ccm.cn-north-4.myhuaweicloud.com/v1/private-certificates/csr/parse { "csr" : "-----BEGIN CERTIFICATE REQUEST-----\\nMIICyTCCAbECAQAwXjELMAkGA1UEBhMCQ04xEDAOBgNVBAgTB3NpY2hhdW4xEDAO\\nBgNVBAcTB2NoZW5nZHUxCzAJBgNVBAoTAkhXMQswCQYDVQQLEwJJVDERMA8GA1UE\\nAxMIdGVzdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCZ4q5z\\nxqK/L/FC9x2jESeUW5GB6zS5rVxT0WLTCTv9d1LtWBLsRIinATYTYiP1pNo4/pBq\\nHlM3IiUDkc896CJerYlNzOIjTaV4GjCZvPrxSHU5toJvIDflBsY+gnzbT1ol/y0r\\n3yb9dx7eeF5rPR+U8RTw+Ov/ZNRb+0CY30hrXMdrWjp5dtLGTlr5EFYxlKNOPCkR\\n+6BGyJnC9PWSuqwsykFbgMRkcBaNAxa59dRhMF50pvx2Vs929vFrMi+ofDELUOqz\\n1vyjaEA3pn3AGJGXZgrGNbSfz12ixgGLes4cQD21GCIAWgnBQ7b1ru2V8ImUfyh0\\nyvTEyHJTuFbQ+257AgMBAAGgJjAkBgkqhkiG9w0BCQ4xFzAVMBMGA1UdEQQMMAqC\\nCHRlc3QuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQBKfjZuYsz4s0wb1POIWn41eiAB\\np53qb63QKWILN9z8dLktcdSl3lPfcfPZpXv++QPtn3LR9rJKBawusk6SPXbvOGgS\\n5J+6eM8kVW2O3gHFgoaMcPYVtiO7ekG6o25qx6+Rj84wbFdmpOiCc8AwrLEBwzYV\\np1zaprWQu6PxBulkYPa3FLcntDdi7B67r0YTpxVvo1K7vHYFboDvPz7xG57QIFIM\\nwGd1OegariMT3N8gBOzLZc+jqLpxgo4xoNqBHMo6DEmKLdWdzU4ljpuGK9had99k\\nvQ5vft/Qra3v1uq2lOm/G92b0uA9Y1t2bMHobtAnuXL0HmY9XcLdzpC3f8h8\\n-----END CERTIFICATE REQUEST-----" }
  • 响应示例 状态码: 200 请求已成功 { "distinguished_name" : { "country" : "CN", "state" : "sichuan", "locality" : "chengdu", "organization" : "HW", "organizational_unit" : "IT", "common_name" : "test.com" }, "public_key" : "-----BEGIN PUBLIC KEY-----\r\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1EX1JfOXquoFDjVi67T\r\npF4kFwetNnLwC0ZQtOK3fftX4/rkHwdGdsYAalzLz2ltlgbtLJHeKaNnjlqTL8bn\r\n0DVIxww6ZP6VaxpfKXaJ76GxDdvb5kp8yRFUAK8N2YQ0UIcsFoXn2CAx1dOtAaNF\r\nO+HwooRnp6GekZaRSYS2bk4olkQ83/2WkkTGC+tAmjSFG7AIY8jaO5RgX40YGANh\r\nU9UGOo8xCxux8k2dsXRnY+fxRiLWphiT2ij4CYURagETbKuRl9WOI+HFVkmIU/0p\r\n3FWqB0RdrRTEcAC+S5fmW75E85rAMh9f65wa/6eWcM6vlnby4Bbm1mcJdR3olgKJ\r\nUQIDAQAB\r\n-----END PUBLIC KEY-----\r\n", "key_algorithm" : "RSA", "key_algorithm_length" : 2048, "signature_algorithm" : "SHA256withRSA" } 状态码: 400 请求参数有误。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 401 被请求的页面需要鉴权。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 403 认证失败。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 404 资源不存在或资源未找到。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 500 服务内部错误。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 key_algorithm String 密钥算法。 key_algorithm_length Integer 密钥算法长度,单位为bit。 signature_algorithm String 签名算法,带具体的签名与哈希算法,如"SHA256withRSA"。 public_key String 公钥内容。 说明: 其中,换行符已被“\r\n”替代; 最小长度:0 最大长度:4096 distinguished_name DistinguishedName object 证书名称配置,详情请参见DistinguishedName字段数据结构说明。 表4 DistinguishedName 参数 参数类型 描述 common_name String 证书通用名称(CN),名称只能由"-"、"_"、" "、"."、","、"*"、字母、数字、汉字组成,长度不能超过64位字符。 最小长度:1 最大长度:64 country String 国家编码,只能由英文组成,长度为2位字符。 最小长度:2 最大长度:2 state String 省市名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过128位字符。 最小长度:1 最大长度:128 locality String 地区名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过128位字符。 最小长度:1 最大长度:128 organization String 组织名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过64位字符。 最小长度:1 最大长度:64 organizational_unit String 组织单元名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过64位字符。 最小长度:1 最大长度:64 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024
  • 响应示例 状态码: 200 请求已成功 { "quotas" : { "resources" : [ { "type" : "CERTIFICATE", "used" : 25, "quota" : 100000 } ] } } 状态码: 400 请求参数有误。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 401 被请求的页面需要鉴权。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 403 认证失败。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 404 资源不存在或资源未找到。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 500 服务内部错误。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 quotas Quotas object 证书配额,详情请参见Quotas字段数据结构说明。 表3 Quotas 参数 参数类型 描述 resources Array of Resources objects 资源配额列表,详情请参见Resources字段数据结构说明。 数组长度:0 - 10 表4 Resources 参数 参数类型 描述 type String 证书类型: CERTIFICATE_AUTHORITY: CA证书; CERTIFICATE: 私有证书。 used Integer 已使用配额数。 quota Integer 配额总数: CERTIFICATE_AUTHORITY: 当前系统指定100; CERTIFICATE: 当前系统指定100000。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 500 表9 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024
  • 响应参数 状态码: 200 表6 响应Body参数 参数 参数类型 描述 ca_id String 当前签发的CA证书ID。 最小长度:36 最大长度:36 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 401 表8 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 403 表9 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 404 表10 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 500 表11 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024
  • 响应示例 状态码: 200 请求已成功 { "ca_id" : "66504812-fedc-414a-9b7c-4c1836398524" } 状态码: 400 请求参数有误。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 401 被请求的页面需要鉴权。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 403 认证失败。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 404 资源不存在或资源未找到。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" } 状态码: 500 服务内部错误。 { "error_code" : "PCA.XXX", "error_msg" : "XXX" }
  • 请求示例 创建CA证书,请求头中的X-Auth-Token字段需要填写token,且该token需要具有本API的访问权限。 POST https://ccm.cn-north-4.myhuaweicloud.com/v1/private-certificate-authorities { "type" : "ROOT", "key_algorithm" : "RSA4096", "signature_algorithm" : "SHA512", "distinguished_name" : { "common_name" : "demoRootRSA", "country" : "CN", "locality" : "chengdu", "organization" : "HW", "organizational_unit" : "dew", "state" : "sichuan" }, "validity" : { "type" : "YEAR", "value" : 3 }, "crl_configuration" : { "enabled" : false, "obs_bucket_name" : "demoBucket", "valid_days" : 8 } }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 certificate_id String 当前签发的证书ID。 最小长度:36 最大长度:36 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 404 表9 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误请求返回的错误码。 最小长度:3 最大长度:36 error_msg String 错误请求返回的错误信息。 最小长度:0 最大长度:1024
共100000条