微服务平台之API授权( 二 )
本文插图
2、 路由规则配置
API发布到网关之后 , 通过Governor为网关配置路由规则 , 如下图所示:
本文插图
路由支持设置黑白名单、支持根据令牌桶算法对路由设置限流策略 。
并且 , 路由规则提供Spring Cloud Gateway常用的路由规则样例模板 , 包括rewrite-path-filter、hystrix-gateway-filter、prefix-path-filter等;
本文插图
3.精细化授权
1、订阅者管理
在实际业务场景中 , 往往会对网关API的授权控制提出比较细粒度的要求 。 例如 , 在下图所示场景中 , 订单管理系统的订单详情应用只允许调用产品管理系统发布的产品查询接口 , 而领券下单应用可以调用产品管理系统的产品查询接口、库存更新接口等 。
本文插图
在EOS微服务平台中 , 通过订阅者的模式来实现精细化的授权管理 。 每个需要授权的系统可以有多个订阅者 , 每个订阅者有各自的订阅凭证 , 订阅者与API建立授权关系 。
在Governor的网关API授权管理功能中 , 服务提供者系统可以为每个需要授权的系统创建多个订阅者 。
本文插图
说明:微服务平台并不限制订阅者必须与应用是一对一的关系 , 多个应用如果需要授权的API完全相同 , 可以使用同一个订阅者的订阅凭证 。
2、API授权
在API授权管理功能中 , 可以为每个订阅者授权访问不同的API , 如下图所示:
本文插图
4.服务调用与网关鉴权
1、系统内服务调用
此处以EOS微服务平台V8.1版本的后端项目及EOS服务的调用为例;
(1) 服务提供者StockManage在实现构件包中将已经实现的逻辑流或逻辑构件通过向导发布为EOS服务 , 在api构件包中生成EOS服务描述文件;
本文插图
(2)服务消费者ProductManage添加服务提供者的api构件包依赖;
本文插图
2、 跨系统服务调用
(1)在Governor中将服务提供者ProductManage的EOS服务发布到所属系统的网关 , 并配置路由规则 , 然后为服务消费者OrderManage所属系统创建订阅者 , 并对其所需调用的EOS服务进行授权;
(2)服务消费者OrderManage添加服务提供者的api构件包依赖;
(3) 服务消费者在boot构件包实现SDK的SDKApiSubscriberProvider接口 , 返回的ApiSubscriber需要包含订阅凭证 , 跨系统调用接口时 , 订阅凭证会自动被SDK的RestTemplate和Feign拦截器添加到请求头中;
推荐阅读
- 南方PLUS|| 广州出大招!成立企业上市综合服务平台,滚动
- 爱云资讯 创新创造价值!软通动力企业服务平台获最佳数字化解决方案奖
- 车家号|特斯拉这步棋下得有点妙,开放软件授权电池专利
- 清澈如初|AIStation重磅登场 浪潮信息决胜AI推理服务平台
- 英国|特朗普授权士兵开枪闯大祸:街头激烈交火,美国人用炸弹攻击军队
- 互联网乱侃秀 有自己的IP,不全部靠国外授权,是必由之路,中国芯要崛起
- 遥不可及|高通与华为达成长期授权协议,华为手机要用高通芯片了?
- 如颖随行|高通已与华为达成新的长期专利授权,华为将支付18亿美元
- 深圳市创业服务平台|注册分公司和子公司有什么区别呢?
- 深圳市创业服务平台|个体户注册公司的流程怎么样呢?
