全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
消息队列 MQ

签名机制说明

更新时间:2018-01-23 21:00:35

您的应用服务器访问认证服务器申请和管理 Token 时,需要将请求参数按照指定方式排序拼接,组织成待签名字符串,然后使用秘钥 secretKey 加密得到签名。

具体约束规则如下:

  • 参数对使用 key=value 格式;
  • 参数对之间使用“&”分隔;
  • 参数对内部,即同名参数,使用逗号“,”分隔;
  • 计算签名时,需要将参数对按照 key 的字典序排序,参数对内部,也需要使用字典序排序。

示例

比如原始请求的 HTTP 方法是:

https://mqauth.aliyuncs.com/token/apply

参数列表有:

parama=a
paramc=c2,c1
paramb=b2,b1,b3

那么先将参数按照 key 排序,得到:

parama=a
paramb=b2,b1,b3
paramc=c2,c1

再将同一参数内的值也按照字典序排序,参数内部用逗号分隔,得到:

parama=a
paramb=b1,b2,b3
paramc=c1,c2

最终拼接得到待签名字符串:

parama=a&paramb=b1,b2,b3&paramc=c1,c2

然后使用 secretKey 作为密钥,HmacSHA1 算法计算得到签名。

注意:

  • HTTP 管理 Token 时,可以选用 HTTP 或者 HTTPS,应用自行选择。
  • HTTP 方法可以选择 GET 或者 POST,建议生产环境使用 POST,测试环境可以使用 GET。
本文导读目录