Sign插件

    插件设置

    • shenyu-admin 基础配置 —> 插件管理 —> sign ,设置为开启。如果用户不想使用此功能,请在 admin 后台停用此插件。

    • 在网关的 pom.xml 文件中添加 sign 的支持。
    • 选择器和规则,请详细看: 。

      • 只有匹配的请求,才会进行签名认证。

    新增 AK/SK

    • shenyu-admin —> 基础配置/认证管理中,点击新增,新增一条 AK/SK 。详情请看: 。
    • 采用 AK/SK 鉴权技术方案。
    • 采用鉴权插件,责任链的模式来完成。
    • 当鉴权插件开启,并配置所有接口鉴权时候生效。

    鉴权使用指南

    • 第三步:构造参数(以下是通用参数)

    对上述3个字段进行 key 的自然排序,然后进行字段与字段值拼接最后再拼接上 SK ,代码示例。

    第一步:首先构造一个 Map

    第二步:进行 Key 的自然排序,然后 KeyValue值拼接最后再拼接分配给你的 SK

    • 你得到的 sign 值应该为:path/api/service/abctimestamp1571711067186version1.0.0506EEB535CF740D7A755CB4B9F4A1536
    • 最后得到的值为:A021BF82BE342668B78CD9ADE593D683
    • 假如你访问的路径为:/api/service/abc

    • 访问地址 :http:网关的域名/api/service/abc

    • 设置header头,header头参数为:

    字段描述
    timestamp1571711067186上述你进行签名的时候使用的时间值
    appKey1TEST123456781分配给你的AK值
    signA90E66763793BDBC817CF3B52AAAC041上述得到的签名值
    version1.0.0写死,就为这个值
    • 签名插件会默认过滤 5 分钟之前的请求

    签名认证算法扩展