检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
创建待签字符串 对HTTP请求进行规范并取得请求的哈希值后,将其与签名算法、签名时间一起组成待签名字符串。 StringToSign = Algorithm + \n + RequestDateTime + \n + HashedCanonicalRequest
签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IntelliJ IDEA 2018.3.5或以上版本,可至IntelliJ IDEA官方网站下载。
本手册将介绍如何使用AK/SK签名认证方式调用通过API网关开放的云服务API,提供签名流程与实现逻辑,以及Java、Go、Python、C等多种不同语言的签名SDK和调用示例。 部分云服务开放的API,不通过API网关,签名认证流程请先参考云服务自身提供的API参考手册。 各云服务API参考手册中的“如何调用API”章节,介绍了认证方法。
中每个部分必须为URI编码。如果URI路径不以“/”结尾,则在尾部添加“/”。 举例: URI具体见云服务的API参考手册,每个API章节都提供对应的资源路径。如虚拟私有云服务的查询VPC列表:/v1/{project_id}/vpcs,此时规范的URI编码为: GET /v1/
environment."如何解决? 调用API网关中开放的API报错,请按以下顺序排查可能原因: 调用API所使用的域名、请求方法、路径不正确。 比如创建的API为POST方法,您使用了GET方法调用。 比如访问的URL比API详情中的URL少一个“/”也会导致无法匹配上此API,例如htt
签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装Visual Studio 2019 version 16.8.4或以上版本,可至Visual
将鼠标移至页面右上角的用户名处,在下拉列表中单击“我的凭证”,查看“项目ID”。 项目用于对云服务器资源进行物理隔离,默认有region级别的隔离,也可在Region下建立多项目,做更细级别的隔离。因此,请参考下图,在右侧列表中找到您的服务器资源对应的Region(所属区域),在其左侧列表中获取项目ID。 图1
Project”。 弹出“New Project”对话框,“Name”填写SDK压缩包内文件夹的名称,“Location”填写该文件夹的解压路径,“Language”选择“Go”,单击“Create”。 图2 Go 完成工程创建后,目录结构如下。 图3 新建工程go的目录结构 “demo.go”为
K集成到您的应用中。 以搭建Node.js开发环境为例介绍JavaScript的SDK集成。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IntelliJ IDEA 2018.3.5或以上版本,可至IntelliJ IDEA官方网站下载。
install libcurl4-openssl-dev 获取SDK 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 点此下载SDK与Demo。 解压时选择解压到当前文件夹,解压后目录结构如下: 名称 说明 hasher.cpp SDK代码 hasher.h header
非get\delete\head请求,需要携带body体,需要在上图Body框中添加body(格式与发送请求的body一致)。 复制4图中的curl命令,在cmd命令行中执行,curl命令执行后再进行下一步。 curl -X GET "http://192.168.0.1:10000/get" -H "X-Sdk-Date:
请求签名的SDK。您可以直接导入示例代码,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IDEA 2022.2.1,可至IDEA官方网站下载可执行文件进行安装,或者下载全量压缩包并解压后直接使用。
libcurl4-openssl-dev 获取SDK 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 点此下载SDK与Demo。 解压时选择解压到当前文件夹,解压后目录结构如下: 名称 说明 signer_common.c 签名SDK代码 signer_common
签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IntelliJ IDEA 2018.3.5或以上版本,可至IntelliJ IDEA官方网站下载。
单击“新增访问密钥”,进入“新增访问密钥”页面。 每个用户最多可创建2个访问密钥,不支持增加配额。如果您已拥有2个访问密钥,将无法创建访问密钥。 如需修改访问密钥,请删除访问密钥后重新创建。 为了保证历史兼容性,系统会使用访问密钥创建时间作为最近使用时间的初始值。在您使用该访问密钥时,系统将自动刷新最近使用时间。
Studio 4.1.2或以上版本,可至Android Studio官方网站下载。 获取SDK 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 点此下载SDK与Demo。 解压后目录结构如下: 名称 说明 app\ 安卓工程代码 build.gradle
构造规范请求。 将待发送的请求内容按照与API网关后台约定的规则组装,确保客户端签名、API网关后台认证时使用的请求内容一致。 使用规范请求和其他信息创建待签字符串。 使用AK/SK和待签字符串计算签名。 将生成的签名信息作为请求消息头添加到HTTP请求中,或者作为查询字符串参数添加到HTTP请求中。
"request_id": "fd6530a01c09807640189e65e837b8ad" } 可能原因 客户端签名时间戳x-sdk-date与APIGW服务器时间相差超过15min。 解决办法 检查客户端时间是否正确。 父主题: 常见问题
AK/SK签名认证算法详解 AK/SK签名认证流程 构造规范请求 创建待签字符串 计算签名 添加签名信息到请求头
计算签名 将SK(Secret Access Key)和创建的待签字符串作为加密哈希函数的输入,计算签名,将二进制值转换为十六进制表示形式。 伪代码如下: signature = HexEncode(HMAC(Secret Access Key, string to sign))