检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
概述 本手册将介绍如何使用AK/SK签名认证方式调用通过API网关开放的云服务API,提供签名流程与实现逻辑,以及Java、Go、Python、C等多种不同语言的签名SDK和调用示例。 部分云服务开放的API,不通过API网关,签名认证流程请先参考云服务自身提供的API参考手册。
AK/SK签名认证流程 客户端涉及的AK/SK签名以及请求发送的流程概述如下: 构造规范请求。 将待发送的请求内容按照与API网关后台约定的规则组装,确保客户端签名、API网关后台认证时使用的请求内容一致。 使用规范请求和其他信息创建待签字符串。 使用AK/SK和待签字符串计算签名。
签名SDK与demo Java Go Python C# JavaScript PHP C++ C Android 父主题: AK/SK签名认证操作指导
安装curl库。 apt-get install libcurl4-openssl-dev 获取SDK 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 点此下载SDK与Demo。 解压时选择解压到当前文件夹,解压后目录结构如下: 名称 说明 hasher.cpp
K集成到您的应用中。 以搭建Node.js开发环境为例介绍JavaScript的SDK集成。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IntelliJ IDEA 2018.3.5或以上版本,可至IntelliJ IDEA官方网站下载。
Android 本节以Android Studio工具为例,介绍如何在Android环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 准备环境 获取并安装Android Studio 4.1.2或以上版本,可至Android
C# 本节以Visual Studio工具为例,介绍如何在C#环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装Visual
Java 本节以IDEA工具为例,介绍如何在Java环境中集成API请求签名的SDK。您可以直接导入示例代码,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IDEA 2022
PHP 本节以IntelliJ IDEA工具为例,介绍如何在PHP环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境 获取并安装IntelliJ
Python 本节以IntelliJ IDEA版本为例,介绍如何在Python环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备环境
C 准备环境 以Linux Ubuntu系统为例,首先需要安装SSL相关工具。 安装openssl库。 1 apt-get install libssl-dev 安装curl库。 1 apt-get install libcurl4-openssl-dev 获取SDK 签名S
Go 本节以IntelliJ IDEA工具为例,介绍如何在Go环境中集成API请求签名的SDK。您可以直接导入示例工程体验,然后参考调用说明部分将签名SDK集成到您的应用中。 签名SDK只包含签名功能,不包含云服务的SDK功能,云服务SDK请参见SDK。 准备IDEA开发环境 获取并安装IntelliJ
AK/SK签名认证算法详解 AK/SK签名认证流程 构造规范请求 创建待签字符串 计算签名 添加签名信息到请求头
使用临时AK/SK做签名 如果使用临时AK/SK对请求签名,您将签名SDK集成到应用时,请在消息头添加以下参数和参数值: X-Security-Token:{securityToken} 然后使用临时AK/SK对请求进行签名,签名SDK与AK/SK的签名SDK一致。 创建一个AP
Token认证方式下获取Token。 AK/SK认证方式下,全局服务的接口调用,需在请求消息头中配置X-Domain-Id。(全局服务:服务部署时不区分物理区域。如IAM、OBS、CDN等。) 获取方式请参考获取账号名和账号ID。 x-stage API接口的环境,请参考各云服务的接口API的环境信息。 Host
请求消息头参数是否可以不参与签名 如果您按照AK/SK签名认证算法详解自行完成API请求签名,请注意X-Sdk-Date必须参与签名,其他请求消息头参数可选。 如果您使用华为云提供的SDK进行签名,则不需要考虑哪些请求消息头参数参与签名,SDK的签名方法自行决定哪些参数参与签名,
AK/SK签名认证操作指导 AK/SK签名认证操作流程 获取EndPoint 获取AK/SK 获取项目ID 获取账号名和账号ID 签名SDK与demo
中每个部分必须为URI编码。如果URI路径不以“/”结尾,则在尾部添加“/”。 举例: URI具体见云服务的API参考手册,每个API章节都提供对应的资源路径。如虚拟私有云服务的查询VPC列表:/v1/{project_id}/vpcs,此时规范的URI编码为: GET /v1/
Body体是否可以不参与签名 当您不想对Body进行签名时,请在消息头添加以下参数和参数值: X-Sdk-Content-Sha256:UNSIGNED-PAYLOAD 添加之后,对body计算hash的位置的值为UNSIGNED-PAYLOAD。 父主题: 常见问题
子项目场景下怎么调用API 子项目场景下调用API: 如果您的资源在子项目中,调用云服务API时需要增加一个请求消息头参数X-Project-Id,参数值填您的项目ID。 参数X-Project-Id相关操作请参见签名SDK与demo。 父主题: 常见问题