配置后端服务的签名校验
签名密钥用于后端服务验证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”、“Basic Auth”、“Aes”。
说明:Site实例中签名密钥暂不支持AES认证类型。
签名算法
选择AES的签名算法,可选择aes-128-cfb和aes-256-cfb。
Key
根据选择的密钥类型,填写不同的密钥信息。
- HMAC:填写HMAC认证所使用密钥对的Key。
- Basic Auth:填写Basic Auth认证所使用的用户名。
- Aes:填写AES认证所使用的密钥key。
Secret
根据选择的密钥类型,填写不同的密钥信息。
- HMAC:填写HMAC认证所使用密钥对的Secret。
- Basic Auth:填写Basic Auth认证所使用的密码。
- Aes:填写AES认证所使用的向量。
确认Secret
填写与Secret一致的值。
- 单击“确定”,创建签名密钥。
签名密钥创建后,您还需要为API绑定签名密钥,才能使签名密钥对API生效。
在后端服务配置签名校验
为API绑定签名密钥后,您可以参考后端服务签名校验开发,在后端服务进行签名校验开发,对请求中的签名信息进行校验。