更新时间:2023-04-27 GMT+08:00
分享

配置后端服务的签名校验

概述

签名密钥用于后端服务验证ROMA Connect的身份,在ROMA Connect访问后端服务时,保障后端服务的安全。

签名密钥由一对Key和Secret组成,只有将API绑定签名密钥后,签名密钥才对API生效。

同一个API在同一个环境中只能绑定一个签名密钥,一个签名密钥可以绑定多个API。

当API绑定签名密钥后,ROMA Connect向该API的后端服务发送请求时,会使用签名密钥中的Key和Secret在后端服务请求中增加相应的签名信息。此时需要后端服务依照同样方式进行签名,通过比对签名结果与请求的Authorization头中携带的签名是否一致,来校验ROMA Connect发过来的请求是否合法。

创建签名密钥

  1. 登录ROMA Connect控制台,在“实例”页面单击实例上的“查看控制台”,进入实例控制台。
  2. 在左侧的导航栏选择“服务集成 APIC > API管理”,在“签名密钥”页签中单击“创建密钥”。
  3. 在创建密钥弹窗中配置签名密钥信息。
    表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一致的值。

  4. 单击“确定”,创建签名密钥。

    签名密钥创建后,您还需要为API绑定签名密钥,才能使签名密钥对API生效。

为API绑定签名密钥

  1. 登录ROMA Connect控制台,在“实例”页面单击实例上的“查看控制台”,进入实例控制台。
  2. 在左侧的导航栏选择“服务集成 APIC > API管理”,在“签名密钥”页签中单击签名密钥后的“绑定API”。
  3. 在签名密钥绑定API页面中,单击“绑定API”。
  4. 在绑定API弹窗中,勾选指定环境下要绑定签名密钥的API。

    您可以通过指定API分组、环境和API名称,筛选所需API。

  5. 单击“绑定”,完成API与签名密钥的绑定。

在后端服务配置签名校验

为API绑定签名密钥后,您可以参考后端服务签名校验开发,在后端服务进行签名校验开发,对请求中的签名信息进行校验。

相关文档