edas-service-auth插件

edas-service-auth是EDAS提供的服务鉴权插件,对网关到EDAS应用的调用请求添加身份鉴权信息,协助EDAS实现特定微服务的访问控制。本文介绍如何配置edas-service-auth插件。

功能说明

对于在EDAS控制台设置了服务鉴权白名单的微服务,EDAS对于网关流量会进行身份鉴权,需要将网关实例加入白名单,才能从网关调用该EDAS服务,否则会返回403错误;对于在EDAS控制台设置了服务鉴权防重放的微服务应用,EDAS对于网关流量会进行超时控制和签名验证,请求过期或验签错误的请求将会返回403错误。更多信息,请参见使用服务鉴权实现Spring Cloud应用的访问控制

插件类型

认证鉴权。

配置字段

认证配置

名称

数据类型

填写要求

默认值

描述

instanceId

string

必填。

-

网关实例ID,以gw-开头的字符串,用于在请求Header中添加网关身份信息。

enableAntiReplay

bool

必填。

false

防重放开关,配置为true时在请求Header中添加请求时间戳和hmac签名用于防重放验证。

配置示例

# 网关实例ID
instanceId: gw-xxxxxxxxxx
# 开启防重放
enableAntiReplay: true

根据此配置开启插件后,从网关进入的请求会携带以下Header。

__micro.service.mse.gateway.id__:gw-xxxxxxxxxx  # 与instanceId参数值一致
__micro.service.timestamp__:1676362179999  # 请求发生时的毫秒级时间戳
__micro.service.signature__:7bTXDwgHsIcz0c3ddAzzo1Pmzf+O07iOeGTque6OYbo=  #签名密钥
__micro.service.secretkey__:fKiokSbOSbISFgjDxwRCUuOerBDguCXq  #生成的签名