微服务平台之API授权
本文插图
转载本文需注明出处:微信公众号EAWorld , 违者必究 。
前言:
微服务平台的安全控制包括登录认证、用户授权、服务调用安全等多个方面 , 其中 , 服务调用安全又分为系统内服务调用认证、系统间服务调用认证 。
EOS微服务平台提供基于EOS SDK的访问控制机制和基于网关的API授权鉴权机制 , 用于实现同一系统内部服务调用和跨系统服务调用的安全认证 。
目录:
【微服务平台之API授权】1.服务安全
2.API发布到网关
3.精细化授权
4.服务调用与网关鉴权
5.总结
1.服务安全
微服务之间的调用 , 可以分为系统内服务调用、系统间服务调用 。 在EOS微服务平台中 , 同一系统内的微服务之间可以直接互相调用 , 不同系统间的微服务必须通过网关进行API发布、授权、访问鉴权、路由转发才能实现调用 。 EOS微服务平台的服务调用安全认证依赖于平台提供的基于EOS SDK的访问控制机制和基于网关的API授权鉴权机制 。
本文插图
1、 同一系统内的服务调用认证
在EOS微服务管理平台(Governor)中可以创建系统 , 系统有唯一的系统编码、系统凭证 , 每个微服务应用都必须属于某个系统 。
对于同一系统内的微服务 , EOS微服务平台允许服务之间互相调用 , 通过微服务应用依赖的EOS SDK实现服务调用认证 。
(1)微服务应用配置文件application.properties中添加服务调用认证所需的配置;
参数说明如下:
本文插图
系统凭证、系统编码可以在Governor的系统管理功能中获取 , 如下图所示:
本文插图
微服务应用配置文件示例如下:
本文插图
(2)服务调用方发起服务调用请求时 , SDK会将系统编码、系统凭证放到请求头;
(3) 服务提供者收到调用请求时 , SDK会拦截所有的请求 , 检查请求头中的X-EOS-SourceSysKey系统凭证、X-EOS-SourceAppCode应用所属系统编码 。
如果系统编码、系统凭证与本系统一致 , 并且根据X-EOS-SourceAppCode检查调用方IP确实属于已注册的应用实例组的实例 , 则说明调用方是本系统内的其他应用 , 允许继续访问当前服务 , 否则拒绝访问 。
2、跨系统的服务调用认证
对于系统间的服务调用认证 , EOS微服务平台要求服务提供者必须将API发布到网关、配置路由规则、对调用方进行订阅授权 , 调用方获得授权之后调用网关上已发布的API 。 EOS微服务平台将基于网关的API授权鉴权与基于EOS SDK的访问控制机制相结合 , 实现跨系统的服务调用认证 。
接下来的内容将会对跨系统的服务调用认证进行详细介绍 。
2.API发布到网关
1、API导入与发布
在EOS微服务平台中 , 一个系统部署一套网关 , 通过Governor的网关API发布功能 , 可以将服务提供者的对外API发布到所属系统的网关上 。
(1)将API导入网关;
选择系统内的应用及实例组 , 通过微服务实例的swagger在线接口描述显示所有API , 选择需要发布的API , 并为发布后的API访问路径设置前缀 , 进行导入;
本文插图
(2) 导入后默认状态为未发布 , 选择需要发布的API , 进行批量发布 。
推荐阅读
- 南方PLUS|| 广州出大招!成立企业上市综合服务平台,滚动
- 爱云资讯 创新创造价值!软通动力企业服务平台获最佳数字化解决方案奖
- 车家号|特斯拉这步棋下得有点妙,开放软件授权电池专利
- 清澈如初|AIStation重磅登场 浪潮信息决胜AI推理服务平台
- 英国|特朗普授权士兵开枪闯大祸:街头激烈交火,美国人用炸弹攻击军队
- 互联网乱侃秀 有自己的IP,不全部靠国外授权,是必由之路,中国芯要崛起
- 遥不可及|高通与华为达成长期授权协议,华为手机要用高通芯片了?
- 如颖随行|高通已与华为达成新的长期专利授权,华为将支付18亿美元
- 深圳市创业服务平台|注册分公司和子公司有什么区别呢?
- 深圳市创业服务平台|个体户注册公司的流程怎么样呢?
