什么是签名密钥
签名密钥是由您创建的一对 Key 和 Secret,相当于您给网关颁发了一个账号密码,网关向您后端服务请求时会将密钥计算后一起传过去,您后端获取相应的字符串做对称计算,就可以对网关做身份验证。使用时您需要了解以下几点:
- 创建密钥时需要选择 [backcolor=transparent]Region,[backcolor=transparent]Region 一旦选定不能更改,而且密钥只能被绑定到同一个 [backcolor=transparent]Region 下的API上。
- 一个 API 仅能绑定一个密钥,密钥可以被替换和修改,可以与 API 绑定或者解绑。
- 您将密钥绑定到 API 之后,由网关抛向您服务后端的该 API 的请求均会加上签名信息。您需要在后端做对称计算来解析签名信息,从而验证网关的身份。具体 HTTP 加签说明请查看文档——后端签名密钥说明文档
密钥泄露 修改替换
当您遇到如下情况:
您的某一个密钥发生了泄露,您可能想要保留该密钥与 API 的绑定关系,但是想要修改密钥的 Key 和 Secret。
当您操作将密钥应用于 API 时,可能该 API 已经绑定了某个密钥,需要替换密钥。
[backcolor=transparent]以上两种情况都建议按照下面的流程来操作:
- 先在后端同时支持两个密钥:原来的密钥和即将修改或替换的密钥,确保切换过程中的请求能够通过签名验证,不受修改或替换的影响。
- 后端配置完备后,完成修改,确定新 Key 和 Secret 生效后再将之前已泄露或废弃的密钥删除。