开发者社区> 问答> 正文

应用配置管理 ACM的签名处理步骤是什么?

应用配置管理 ACM的签名处理步骤是什么?

展开
收起
保持可爱mmm 2020-03-28 18:57:48 619 0
1 条回答
写回答
取消 提交回答
  • 使用请求参数构造规范的请求字符串(QueryParam)。 使用上一步构造的规范字符串,按照以下规则构造用于计算签名的字符串。

    Signature=HMAC-SHA1(QueryParam)

    说明 对于不同的请求,QueryParam 会不同。 按照 RFC2104 的定义,使用上一步构造的用于签名的字符串来计算签名 HMAC 值。

    说明 计算签名时使用的 Key 就是您持有的 AccessKeySecret(ASCII:38),使用的哈希算法是 SHA1。 按照 Base64 编码规则将上一步算出的 HMAC 值编码成字符串,即得到签名值(Signature)。 将上一步得到的签名值作为 Signature 参数添加到请求参数中,即完成对请求的签名处理。 示例代码 以下示例代码展示了如何以 Shell 构造 ACM 请求。

    #!/bin/bash

    config param

    dataId="com.alibaba.nacos.example.properties" group="DEFAULT_GROUP" namespace="04754ad1-4f67-4d67-b2bf-1f73a04a****" accessKey="8c5cbb849ae04682ad9f455a96aa****" secretKey="lwO5T7vfPJu27FclPa+/CyIG****" endpoint="acm.aliyun.com"

    config param end

    get serverIp from address server

    serverIp=curl $endpoint:8080/diamond-server/diamond -s | awk '{a[NR]=$0}END{srand();i=int(rand()*NR+1);print a[i]}'

    config sign

    timestamp=echo $[$(date +%s%N)/1000000] signStr=$namespace+$group+$timestamp signContent=echo -n $signStr | openssl dgst -hmac $secretKey -sha1 -binary | base64

    request to get a config

    curl -H "Spas-AccessKey:"$accessKey -H "timeStamp:"$timestamp -H "Spas-Signature:"$signContent "http://"$serv

    2020-03-28 18:58:18
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
API 网关实践 立即下载
API网关实践 立即下载
阿里云 API 精选手册(Alibaba Cloud API Playbook) 立即下载