华为云用户手册

  • 响应示例 状态码: 200 请求成功。 { "evaluation_project_id" : 230, "evaluation_project_name" : "best_UGO", "evaluation_project_status" : "PENDING", "project_status_detail" : { "object_collection_status" : "COMPLETED", "pre_migration_status" : "COMPLETED" }, "source_db_type" : "ORACLE", "source_db_version" : "11g", "target_db_version" : "" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 evaluation_project_id Integer 评估项目ID。 evaluation_project_name String 评估项目名称。 evaluation_project_status String 评估项目状态。 枚举值: COMPLETED WAITING PENDING FAILED STOPPED project_status_detail 表4 object 评估项目状态的详情。 source_db_type String 源数据库类型。 source_db_version String 源数据库版本。 target_db_type String 目标数据库类型。 target_db_version String 目标数据库版本。 表4 ProjectStatusDetail 参数 参数类型 描述 object_collection_status String 采集的状态。 object_collection_progress String 采集的进度。 pre_migration_status String 评估的状态。 pre_migration_progress String 评估的进度。
  • 响应示例 状态码: 200 请求成功。 { "evaluation_project_id" : "230", "evaluation_project_name" : "best_UGO", "evaluation_project_status" : "PENDING", "project_status_detail" : { "object_collection_status" : "COMPLETED", "pre_migration_status" : "COMPLETED" }, "source_db_type" : "ORACLE", "target_db_type" : "RDS for MySQL", "target_db_version" : "5.7" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 evaluation_project_id Integer 评估项目ID。 evaluation_project_name String 评估项目名称。 evaluation_project_status String 评估项目状态。 枚举值: COMPLETED WAITING PENDING FAILED STOPPED project_status_detail 表5 object 评估项目状态的详情。 source_db_type String 源数据库类型。 source_db_version String 源数据库版本。 target_db_type String 目标数据库类型。 target_db_version String 目标数据库版本。 表5 ProjectStatusDetail 参数 参数类型 描述 object_collection_status String 采集的状态。 object_collection_progress String 采集的进度。 pre_migration_status String 评估的状态。 pre_migration_progress String 评估的进度。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从 IAM 服务获取的用户Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 evaluation_project_id 是 String 评估项目ID。 target_db_type 是 String 目标数据库类型。 target_db_version 是 String 目标数据库版本。
  • 请求示例 确认ID为230的评估项目的目标库类型为RDS for MySQL-5.7版本。 POST https://{Endpoint}/v1/0ac6eb2c8000d2ee2fd9c006dededbe6/evaluation-projects/target-confirmation { "evaluation_project_id" : 230, "target_db_type" : "RDS for MySQL", "target_db_version" : "5.7" }
  • 响应示例 状态码: 200 请求成功。 { "evaluation_project_id" : 230, "evaluation_project_name" : "best_UGO", "source_db_size" : "0.094 TB", "source_db_schema" : 39, "source_db_cpu" : "2", "source_db_character_set" : "ZHS16GBK", "source_db_os" : "Linux x86 64-bit", "source_db_instance_num" : 1, "source_db_ram" : "SGA 0.99 GB, PGA 0.2 GB, AMM", "source_db_info" : { "user_name" : "ugo", "connection_string" : "100.xx.xxx.xxx:1521:ORCL", "source_db_type" : "ORACLE", "service_name" : "orcl", "ip" : null, "port" : "null" }, "source_db_phy_ram" : "7.62 GB", "source_db_version" : "11.2.0.1.0", "source_db_conf" : "Single Instance", "source_db_clock" : "+00:00" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 source_db_size String 数据库大小。 source_db_schema Long 数据库schema个数。 source_db_cpu String 数据库CPU个数。 source_db_character_set String 数据库字符集。 source_db_os String 数据库操作系统。 source_db_instance_num Integer 实例数量。 source_db_ram String 数据库内存。 source_db_info 表4 object 源数据库信息。 source_db_phy_ram String 数据库物理 RAM 。 source_db_version String 数据库版本。 source_db_conf String 数据库配置。 source_db_clock String 数据库时区。 evaluation_project_id Integer 评估项目ID。 evaluation_project_name String 评估项目名称。 表4 SourceDB 参数 参数类型 描述 user_name String 用户名。 connection_string String 连接字符串。 source_db_type String 源数据库类型。 service_name String service名称。 ip String ip。 port String port。
  • 请求示例 创建名为best_UGO,源库为Oracle-11g,采集全部schema和全部支持的数据类型的评估项目。 POST https://{endpoint}/v1/0ac6eb2c8000d2ee2fd9c006dededbe6/evaluation-projects { "evaluation_project_name" : "best_UGO", "source_db_info" : { "user_name" : "ugo", "password" : "Ugo@123", "connection_string" : "100.xx.xxx.xxx:1521:ORCL", "source_db_type" : "ORACLE", "source_db_version" : "11g" }, "schemas_info" : { "is_select_all_schemas" : true, "schemas_list" : [ ] }, "objects_type_info" : { "is_select_all_objects_type" : true, "objects_type_list" : [ ] } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 evaluation_project_name 是 String 评估项目名称。长度为5-50个字符,以英文字母开头,英文字母或数字结束,允许包含下划线和中划线。不允许重复。 最小长度:5 最大长度:50 source_db_info 是 表4 object 源库信息。 schemas_info 是 表5 object 源库中的schema信息。 objects_type_info 是 表6 object 源库中的对象类型信息。 表4 SourceDBInfo 参数 是否必选 参数类型 描述 connection_string 是 String 连接字符串。 user_name 是 String 用户名。 password 是 String 用户密码。 source_db_type 是 String 数据库类型。 枚举值:ORACLE source_db_version 是 String 数据库版本。 注意: 该字段的值是数据库类型source_db_type对应的版本,当前支持以下组合: ORACLE-11g; ORACLE-12c; ORACLE-18c; ORACLE-19c。 枚举值: 11g 12c 18c 19c 表5 SchemaInfo 参数 是否必选 参数类型 描述 is_select_all_schemas 是 Boolean 是否选择全部schema。 schemas_list 否 Array of strings 需要评估的源库schema列表。is_select_all_schemas为false时,必填。 表6 ObjectTypeInfo 参数 是否必选 参数类型 描述 is_select_all_objects_type 是 Boolean 是否选择全部object类型。取值为true时,不包含USER。 objects_type_list 否 Array of strings 需要评估的object类型列表。is_select_all_objects_type为false时必填。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 从IAM服务获取的用户Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 source_db_type 是 String 源数据库类型。 枚举值: ORACLE target_db_type 是 String 目标数据库类型。其中 GaussDB Centralized已弃用。 枚举值: RDS for MySQL GaussDB(for MySQL) RDS for PostgreSQL GaussDB Primary/Standby GaussDB Centralized target_db_version 是 String 目标数据库版本。 注意: 该字段需要与 target_db_type 字段组合成有效的目标数据库类型与版本,当前支持以下组合: GaussDB Centralized-2.0(已弃用); GaussDB Primary/Standby-2.0; RDS for PostgreSQL-11; RDS for PostgreSQL-Enhanced Edition; RDS for MySQL-5.7; GaussDB(for MySQL) 8.0。 枚举值: 5.7 8.0 11 2.0 Enhanced Edition sql_statement 是 String 需要转换的SQL语句。
  • 请求示例 创建源库为Oracle,目标库为RDS for PostgreSQL-11版本的SQL语句转换请求。 POST https://{EndPoint}/v1/{project_id}/sql-conversion { "source_db_type" : "ORACLE", "target_db_type" : "RDS for PostgreSQL", "sql_statement" : "create table ugo(col1 int, col2 varchar2);", "target_db_version" : "11" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 is_support_conversion Boolean 是否支持SQL语句转换。 converted_sql_statement String 转换后的SQL语句。 unsupported_items Array of 表5 objects 不支持SQL语句转换的详情。 表5 UnSupportedItem 参数 参数类型 描述 reason String SQL语句不支持转换的原因。 suggestion String SQL语句不支持转换的建议。 line_number Integer 行号。 position Integer 位置。
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 versions Array of 表3 objects 所有API版本详情列表。 表3 VersionDetails 参数 参数类型 描述 id String 版本ID。 links String 版本详情的URL地址。 version String 该版本API的微版本信息。 status String 版本的状态。 缺省值:CURRENT 枚举值: CURRENT SUPPORTED DEPRECATED updated String 版本更新时间。
  • 响应示例 状态码: 200 请求成功。 { "quotas" : [ { "quota" : 8, "used" : 3, "project_type" : "evaluation_project" }, { "quota" : 8, "used" : 1, "project_type" : "migration_project" } ] }
  • 调用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": "cn-north-1", "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" } }
  • 错误码 表1 错误码说明 状态码 错误码 中文说明 400 UGO.90000000 系统内部错误。 400 UGO.90000001 Token不合法。 400 UGO.91000001 参数%s的取值不合法。 400 UGO.91000002 SQL语句的长度超出系统限制(%s KB)。 400 UGO.91000003 只支持转换UTF-8编码的SQL语句。 400 UGO.91000004 评估项目名称重复。 400 UGO.91000005 objects_type_list的元素不合法:%s。 400 UGO.91000006 迁移项目名称重复。 400 UGO.91000007 当前帐户被冻结。 400 UGO.92000001 所查询版本的信息不存在。 400 UGO.92000002 评估项目不存在。 400 UGO.92000003 评估项目被冻结。 400 UGO.92000004 当前的项目状态不支持该操作。 400 UGO.92000005 查询不到RDS实例信息。 400 UGO.92000006 创建VPC Endpoint失败。 400 UGO.92000007 迁移项目不存在。 400 UGO.92000008 迁移项目被冻结。 400 UGO.92000009 评估项目不是COMPLETED状态。 父主题: 附录
  • 状态码 状态码如表1所示: 表1 状态码 状态码 编码 错误码说明 100 Continue 继续请求。 这个临时响应用来通知客户端,它的部分请求已经被服务器接收,且仍未被拒绝。 101 Switching Protocols 切换协议。只能切换到更高级的协议。 例如,切换到HTTP的新版本协议。 200 OK 请求成功。 201 Created 创建类的请求完全成功。 202 Accepted 已经接受请求,但未处理完成。 203 Non-Authoritative Information 非授权信息,请求成功。 204 NoContent 请求完全成功,同时HTTP响应不包含响应体。 在响应OPTIONS方法的HTTP请求时返回此状态码。 205 Reset Content 重置内容,服务器处理成功。 206 Partial Content 服务器成功处理了部分GET请求。 300 Multiple Choices 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择。 301 Moved Permanently 永久移动,请求的资源已被永久的移动到新的URI,返回信息会包括新的URI。 302 Found 资源被临时移动。 303 See Other 查看其它地址。 使用GET和POST请求查看。 304 Not Modified 所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。 305 Use Proxy 所请求的资源必须通过代理访问。 306 Unused 已经被废弃的HTTP状态码。 400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 402 Payment Required 保留请求。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。 建议直接修改该请求,不要重试该请求。 405 MethodNotAllowed 请求中带有该资源不支持的方法。 建议直接修改该请求,不要重试该请求。 406 Not Acceptable 服务器无法根据客户端请求的内容特性完成请求。 407 Proxy Authentication Required 请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权。 408 Request Time-out 服务器等候请求时发生超时。 客户端可以随时再次提交该请求而无需进行任何更改。 409 Conflict 服务器在完成请求时发生冲突。 返回该状态码,表明客户端尝试创建的资源已经存在,或者由于冲突请求的更新操作不能被完成。 410 Gone 客户端请求的资源已经不存在。 返回该状态码,表明请求的资源已被永久删除。 411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息。 412 Precondition Failed 未满足前提条件,服务器未满足请求者在请求中设置的其中一个前提条件。 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息。 414 Request-URI Too Large 请求的URI过长(URI通常为网址),服务器无法处理。 415 Unsupported Media Type 服务器无法处理请求附带的媒体格式。 416 Requested range not satisfiable 客户端请求的范围无效。 417 Expectation Failed 服务器无法满足Expect的请求头信息。 422 UnprocessableEntity 请求格式正确,但是由于含有语义错误,无法响应。 429 TooManyRequests 表明请求超出了客户端访问频率的限制或者服务端接收到多于它能处理的请求。建议客户端读取相应的Retry-After首部,然后等待该首部指出的时间后再重试。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 501 Not Implemented 服务器不支持请求的功能,无法完成请求。 502 Bad Gateway 充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。 503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重试该请求。 504 ServerTimeout 请求在给定的时间内无法完成。客户端仅在为请求指定超时(Timeout)参数时会得到该响应。 505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理。 父主题: 附录
  • UGO授权分类 “√”表示支持,“x”表示暂不支持。 表1 授权分类 API功能 对应API接口 授权项(Action) IAM项目(Project) 企业项目(Enterprise Project) 查询API版本信息列表 / 无 √ √ 查询指定版本号的API版本信息 /{api_version} 无 √ √ 查询配额 /v1/{project_id}/quotas ugo:jobs:getQuotas √ √ SQL语句转换 /v1/{project_id}/sql-conversion ugo:sqlStatement:convert √ √ 创建评估项目 /v1/{project_id}/evaluation-projects ugo:evaluationJob:create √ √ 查询评估项目列表 /v1/{project_id}/evaluation-projects ugo:evaluationJob:list √ √ 查询评估项目状态 /v1/{project_id}/evaluation-projects/{evaluation_project_id}/status ugo:jobs:getDetails √ √ 查询评估项目详情 /v1/{project_id}/evaluation-projects/{evaluation_project_id}/detail ugo:jobs:getDetails √ √ 评估项目确认目标数据库类型 /v1/{project_id}/evaluation-projects/target-confirmation ugo:evaluationJob:updateEvalProject √ √ 删除评估项目 /v1/{project_id}/evaluation-projects/{evaluation_project_id} ugo:evaluationJob:delete √ √ 创建迁移项目 /v1/{project_id}/migration-projects ugo:migrationJob:create √ √ 查询迁移项目列表 /v1/{project_id}/migration-projects ugo:migrationJob:list √ √ 查询迁移项目状态 /v1/{project_id}/migrations/{migration_project_id}/status ugo:jobs:getDetails √ √ 目标库权限检查 /v1/{project_id}/migration-projects/{migration_project_id}/permission-check ugo:migrationJob:create √ √ 查询权限检查结果 /v1/{project_id}/migration-projects/{migration_project_id}/permission-result ugo:jobs:getDetails √ √ 查询迁移项目详情 /v1/{project_id}/migration-projects/{migration_project_id}/detail ugo:jobs:getDetails √ √ 提交语法转换 /v1/{project_id}/migration-projects/{migration_project_id}/syntax-conversion ugo:migrationJob:startConvert √ √ 查询语法转换的进度 /v1/{project_id}/migration-projects/{migration_project_id}/syntax-conversion-progress ugo:jobs:getDetails √ √ 提交验证 /v1/{project_id}/migration-projects/{migration_project_id}/verification ugo:migrationJob:startVerify √ √ 查询验证进度 /v1/{project_id}/migration-projects/{migration_project_id}/verification-progress ugo:jobs:getDetails √ √ 下载迁移错误报告 /v1/{project_id}/migration-projects/{migration_project_id}/download-failure-report ugo:jobs:getDetails √ √ 删除迁移项目 /v1/{project_id}/migration-projects/{migration_project_id} ugo:migrationJob:delete √ √ 父主题: 权限策略和授权项
  • 支持的授权项 策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下: 权限:允许或拒绝某项操作。 对应API接口:自定义策略实际调用的API接口。 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。 IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。关于IAM项目与企业项目的区别,详情请参见IAM与企业管理的区别。 UGO支持的自定义策略授权项请参见UGO授权分类。
  • 响应消息体 响应消息体通常以结构化格式返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。 对于获取用户Token的接口,返回如下消息体。为篇幅起见,这里只展示部分内容。 { "token": { "expires_at": "2019-02-13T06:52:13.855000Z", "methods": [ "password" ], "catalog": [ { "endpoints": [ { "region_id": "cn-north-1", ...... 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 { "error_msg": "The format of message is error", "error_code": "UGO.0001" } 其中,error_code表示错误码,error_msg表示错误描述信息。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。 当您使用Token认证方式完成认证鉴权时,需要获取用户Token并在调用接口时增加“X-Auth-Token”到业务接口请求消息头中。 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....”加到请求消息头即可,如下所示。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/projects 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不同,使用时请注意。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 表2 请求方法 请求方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于获取用户Token的接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码,xxxxxxxxxx为project的名称,如cn-north-1,您可以从地区和终端节点中获取。 scope参数定义了Token的作用域,上面示例中获取的Token仅能访问project下的资源。您还可以设置Token额作用域为某个账号下所有资源或账号的某个project下的资源,详细定义请参见获取IAM用户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。
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 如表3公共消息头需要添加到请求中。 表3 公共请求消息头 名称 描述 是否必选 示例 Content-Type 发送的实体的MIME类型。 是。 默认取值为:“application/json”,有其他取值时会在具体接口中专门说明。 Content-Length 请求body长度,单位为Byte。 POST/PUT请求为可选。 GET不包含该消息头。 3495 X-Auth-Token 用户Token。请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 否。 说明: 使用Token认证时该字段必选。 MIIPAgYJKoZfegerIhvcNAQcCo...ggg1BBIINPXsidG9rZ X-Language 请求语言类型。 是。 en-us 其它header属性,请遵照http协议。 对于获取用户Token的接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json
  • 请求URI 请求URI由如下部分组成。 {URI-scheme}://{Endpoint}/{resource-path}?{query-string} 表1 请求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在同一个区域也相同,所以简洁起见将这两部分省略。
  • 基本概念 帐号 用户注册华为云时的账号,账号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于账号是付费主体,为了确保账号安全,建议您不要直接使用账号进行日常管理工作,而是创建用户并使用他们进行日常管理工作。 用户 由账号在IAM中创建的用户,是云服务的使用人员,具有身份凭证(密码和访问密钥)。 通常在调用API的鉴权过程中,您需要用到账号、用户和密码等信息。 区域(Region) 指云资源所在的物理位置,同一区域内可用区间内网互通,不同区域间内网不互通。通过在不同地区创建云资源,可以将应用程序设计的更接近特定客户的要求,或满足不同地区的法律或其他要求。 可用区(AZ,Availability Zone) 一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 项目 华为云的区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您账号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默认的项目中创建子项目,并在子项目中购买资源,然后以子项目为单位进行授权,使得用户仅能访问特定子项目中资源,使得资源的权限控制更加精确。 图1 项目隔离模型 企业项目 企业项目是项目的升级版,针对企业不同项目间资源的分组和管理,是逻辑隔离。企业项目中可以包含多个区域的资源,且项目中的资源可以迁入迁出。 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 父主题: 使用前必读
  • 终端节点 终端节点即调用API的请求地址,不同服务不同区域的终端节点不同,您可以从地区和终端节点中查询服务的终端节点。 数据库和应用迁移 UGO API当前支持的Region如表1所示,请您根据业务需要选择对应区域的终端节点。 表1 数据库和应用迁移 UGO API当前支持的Region 区域名称 区域 终端节点(Endpoint) 协议类型 华南-广州 cn-south-1 ugo.cn-south-1.myhuaweicloud.com HTTPS 父主题: 使用前必读
  • 概述 数据库和应用迁移 UGO(Database and Application Migration UGO,以下简称为UGO)是专注于异构数据库结构迁移的专业服务。可将数据库中的DDL一键自动转换为华为云GaussDB/RDS的SQL语法,通过数据库评估、结构迁移两大核心功能和自动化语法转换,提前识别可能存在的改造工作、提高转化率、最大化降低用户数据库迁移成本。 您可以使用本文档提供的API对UGO进行相关操作。支持的全部操作请参见API接口概览。 在调用UGO API之前,请确保已经充分了解UGO相关概念。 父主题: 使用前必读
共100000条