【转载】腾讯API|【转载】腾讯API SecretId 与 SecretKey 鉴权
腾讯云 API 使用签名方法(Signature)对接口进行鉴权。每一次请求都需要在请求中包含签名信息, 以验证用户身份。
在第一次使用云API之前,用户首先需要在腾讯云网站上申请安全凭证,安全凭证包括 SecretId 和 SecretKey, SecretId 是用于标识 API 调用者的身份,SecretKey是用于加密签名字符串和服务器端验证签名字符串的密钥。SecretKey 必须严格保管。避免泄露。
- 【【转载】腾讯API|【转载】腾讯API SecretId 与 SecretKey 鉴权】申请安全凭证
- 登录 腾讯云, 进入 管理中心 页面
- 点击 管理账号 下的 安全凭证 链接, 进入 云API访问密钥管理 页面
- 在 云API访问密钥管理 页面可以新建 SecretId, 每个帐号最多可以创建两个 SecretId
- 生成签名串
假设上一步申请的 SecretId 和 SecretKey 分别是:
SecretId: AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA
SecretKey: Gu5t9xGARNpq86cd98joQYCN3Cozk1qA
方法名: Action=DescribeInstances
SecretId: SecretId= AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA
当前时间戳: Timestamp=1408704141
随机正整数: Nonce=345122
区域: Region=gz
接口签名的详细步骤如下:
- 对参数排序
对请求参数按参数名做字典序升序排列, 结果如下:
- 拼接请求字符串
把上一步排序好的请求参数, 格式化成 k=v,然后用"&"拼接在一起。注意不包括Signature参数,v为原始值而非url编码后的值。结果为:
- 拼接签名源文字符串
拼接签名原文时需要如下参数:
请求方法: 支持 POST 和 GET 方式, 这里架设为 GET 请求, 注意 GET 为全大写
请求主机: cvm.api.qcloud.com, 根据接口所属模块不同域名也不同, 详见接口文档
请求路径: /v2/index.php
请求字符串: 即前 2 步生成的请求字符串
请求方法 + 请求主机 +请求路径 + ? + 请求字符串
拼接结果为:
GETcvm.api.qcloud.com/v2/index.php?Action=DescribeInstances&Nonce= 345122&Region=gz&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA&Timestamp=1408704141
- 生成签名串
- 腾讯云 API 使用 HMAC-SHA1 算法对请求进行签名
- 签名串需要使用 Base64 编码
- 发送请求时, 对签名串进行 Url Encode
srcStr = 'GETcvm.api.qcloud.com/v2/index.php?Action=DescribeInstances&Nonce=345122&Region=gz&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA&Timestamp=1408704141';
srcStr, signStr;
这里得到的签名串为:
HgIYOPcx5lN6gz8JsCFBNAWp2oQ=
使用其它程序设计语言开发时, 可用上面示例中的原文进行签名验证, 得到的签名串与例子中的一致即可
- 添加签名, 发送请求
- 请求参数中添加 Signature 参数, 参数值为上一步生成的签名串, 并且对签名进行 Url Encode
- 发送 HTTPS 协议的 GET 请求即可得到 JSON 字符串格式的接口返回值
https://cvm.api.qcloud.com/v2/index.php?Action=DescribeInstances&Nonce=345122&Region=gz&SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA&Signature=HgIYOPcx5lN6gz8JsCFBNAWp2oQ%3D&Timestamp=1408704141
将示例代码中的 YOUR_SECRET_ID 和 YOUR_SECRET_KEY 替换成实际的 SecretId 和 SecretKey
示例代码仅供参考, 请根据实际情况使用。
原文:
http://www.qcloud.com/wiki/接口鉴权
推荐阅读
- 宽容谁
- 我要做大厨
- 增长黑客的海盗法则
- 画画吗()
- 2019-02-13——今天谈梦想()
- 远去的风筝
- 三十年后的广场舞大爷
- 叙述作文
- 20190302|20190302 复盘翻盘
- 学无止境,人生还很长