配置后端服务的签名校验
概述
签名密钥用于后端服务验证ROMA Connect的身份,在ROMA Connect访问后端服务时,保障后端服务的安全。
签名密钥由一对Key和Secret组成,只有将API绑定签名密钥后,签名密钥才对API生效。
同一个API在同一个环境中只能绑定一个签名密钥,一个签名密钥可以绑定多个API。
当API绑定签名密钥后,ROMA Connect向该API的后端服务发送请求时,会使用签名密钥中的Key和Secret在后端服务请求中增加相应的签名信息。此时需要后端服务依照同样方式进行签名,通过比对签名结果与请求的Authorization头中携带的签名是否一致,来校验ROMA Connect发过来的请求是否合法。
创建签名密钥
- 登录ROMA Connect控制台,在“实例”页面单击实例上的“查看控制台”,进入实例控制台。
- 在左侧的导航栏选择“服务集成 APIC > API管理”,在“签名密钥”页签中单击“创建密钥”。
- 在创建密钥弹窗中配置签名密钥信息。
表1 签名密钥配置 参数
配置说明
密钥名称
填写签名密钥的名称,根据规划自定义。建议您按照一定的命名规则填写签名密钥名称,方便您快速识别和查找。
类型
选择签名密钥的认证类型,可选择“hmac”、“aes”和“basic”。
说明:Site实例中签名密钥暂不支持aes认证类型。
Key
根据选择的密钥类型,填写不同的密钥信息。
- hmac:填写hmac认证所使用密钥对的Key。
- basic:填写basic认证所使用的用户名。
- aes:填写aes认证所使用的密钥key。
签名算法
选择aes的签名算法,包含以下两种:
- aes-128-cfb
- aes-256-cfb
Secret
根据选择的密钥类型,填写不同的密钥信息。
- hmac:填写hmac认证所使用密钥对的Secret。
- basic:填写basic认证所使用的密码。
- aes:填写aes认证所使用的向量。
确认Secret
填写与Secret一致的值。
- 单击“确定”,创建签名密钥。
签名密钥创建后,您还需要为API绑定签名密钥,才能使签名密钥对API生效。
在后端服务配置签名校验
为API绑定签名密钥后,您可以参考后端服务签名校验开发,在后端服务进行签名校验开发,对请求中的签名信息进行校验。