检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
构造规范请求 使用AK/SK方式进行签名与认证,首先需要规范请求内容,然后再进行签名。客户端与云服务API网关使用相同的请求规范,可以确保同一个HTTP请求的前后端得到相同的签名结果,从而完成身份校验。 HTTP请求规范伪代码如下: CanonicalRequest =
错误码说明 当您使用各云服务的API时,如果遇到“APIGW”开头的错误码,请参考如下语义与解决方案进行处理。 表1 错误码 错误码 错误信息 HTTP状态码 语义 解决方案 APIGW.0101 The API does not exist or has not been published
SignedHeaders=SignedHeaders, Signature=signature 需要注意的是算法与Access之前有空格但没有逗号,但是SignedHeaders与Signature之前需要使用逗号隔开。 得到的签名消息头为: SDK-HMAC-SHA256 Access=QTWAOYTTINDUT2QVKYUC
客户端涉及的AK/SK签名以及请求发送的流程概述如下: 构造规范请求。 将待发送的请求内容按照与API网关后台约定的规则组装,确保客户端签名、API网关后台认证时使用的请求内容一致。 使用规范请求和其他信息创建待签字符串。 使用AK/SK和待签字符串计算签名。 将生成的签名信息作
获取EndPoint 地区与终端节点,即云服务在不同Region有不同的访问域名。 获取方式请参考地区和终端节点。 本手册所有关于请求URL的举例,其中Endpoint以service.region.example.com为例。 父主题: AK/SK签名认证操作指导
子项目场景下怎么调用API 子项目场景下调用API: 如果您的资源在子项目中,调用云服务API时需要增加一个请求消息头参数X-Project-Id,参数值填您的项目ID。 参数X-Project-Id相关操作请参见签名SDK与demo。 父主题: 常见问题
需要获取以下信息,包括: 用于组成请求URL的Endpoint和URI。 用于签名和认证的AK/SK。 用于区分租户的项目ID、子项目ID。 用于区分租户的账号名、账号ID。 用于API的环境信息。 用于Host的域名信息。 表1 信息收集项 信息项 说明 Endpoint 地区与终端节点,即云服务在不同Region有不同的访问域名。
RequestDateTime 请求时间戳。与请求消息头X-Sdk-Date的值相同,格式为YYYYMMDDTHHMMSSZ。 HashedCanonicalRequest 将构造规范请求中构造的规范请求以SHA256算法生成的hash值。 上述例子得到的待签字符串为: SDK-HMAC-SHA256
install libcurl4-openssl-dev 获取SDK 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 点此下载SDK与Demo。 解压时选择解压到当前文件夹,解压后目录结构如下: 名称 说明 signer_common.c 签名SDK代码
后参考示例与各语言的API调用说明部分,将SDK集成到您的应用中。 如果本手册的多语言签名示例没有涵盖您使用的编程语言,请根据签名流程与算法,自主实现请求的签名。 API调用的另一种认证方式为Token认证,Token认证的说明与示例包含在各云服务的API参考手册中的“认证鉴权”章节。
apt-get install libcurl4-openssl-dev 获取SDK 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 点此下载SDK与Demo。 解压时选择解压到当前文件夹,解压后目录结构如下: 名称 说明 hasher.cpp SDK代码 hasher
X-Security-Token:{securityToken} 然后使用临时AK/SK对请求进行签名,签名SDK与AK/SK的签名SDK一致。 创建一个API,安全认证选择“华为IAM认证”,并发布。 获取当前账号的临时AK/SK与{securityToken},请参考IAM接口文档。 例如获得响应参数为: {
本节以IntelliJ IDEA工具为例,介绍如何在Go环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备IDEA开发环境 获取并安装IntelliJ
0301", "request_id": "******" } 可能原因 用户的API所属IAM认证,TOKEN解析失败。 解决办法 检查获取token的方法,token是否正确。 检查获取token的环境与调用的环境是否一致。 Incorrect IAM authentication
Studio,选择“File > Open”。 在弹出的对话框中选择解压后的SDK路径。 打开工程后,目录结构如下。 请求签名与API调用 在Android工程中的“app/libs”目录下,加入SDK所需jar包。其中jar包必须包括: java-sdk-core-x.x.x.jar commons-logging-1
本节以Visual Studio工具为例,介绍如何在C#环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装Visual Studio
单击“Next”。 单击“...”,在弹出的对话框中选择解压后的SDK路径,单击“Finish”。 完成工程创建后,目录结构如下。 请求签名与API调用 在代码中引入sdk。 1 require 'signer.php'; 生成一个新的Signer, 填入AK和SK。 本示例以
本节以IntelliJ IDEA版本为例,介绍如何在Python环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IntelliJ
IDEA工具为例,介绍如何在Js环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 以搭建Node.js开发环境为例介绍JavaScript的SDK集成。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境
"request_id": "cb141a91c945e68950a14a8eff5d62dc" } 可能原因 签名认证算法使用有问题,客户端计算的签名结果与API网关计算的签名结果不同。 解决方法 请参考Incorrect IAM authentication information: verify