前夕框架和HMAC认证

时间:2014-10-27 11:28:59

标签: rest python-3.x eve

我正在以这种方式计算HTTP正文请求的HMAC:

payload = {"name":"myvm","os":"gentoo","resources":{"vCPU":"4","RAM":"512","Disk":"1000"},"actions":["start"]}

key = "supersecretkey"
secret = bytes(key, encoding='utf-8')

msg = json.dumps(payload, sort_keys=True)
message = bytes(msg, encoding='utf-8')

print(hmac.new(secret, message, sha1).hexdigest())

之后我使用b64编码hexdigest并像curl一样发送它Authorization: paolo:$hmac_base64_encoded
问题是我总是得到500错误。
我做错了什么?

1 个答案:

答案 0 :(得分:0)

由于您使用的是Python 3x,请确保在您的自定义HMACAuth中转换为字节(官方文档中的代码片段适用于Python 2x)。