当前位置: 首页 > news >正文

建站之星网站 seo优化自动app优化

建站之星网站 seo优化,自动app优化,网页翻译不见了,郑州做网站的专业公司文章目录 前言一、微服务鉴权1.1 前端权限检查1.2 后端权限检查1.3 优缺点 二、网关鉴权2.1 接口权限存储至Redis2.2 网关鉴权做匹配 总结 前言 在微服务架构中,如何通过网关鉴权结合Redis缓存提升权限控制的效率与性能。首先,文章对比了两种常见的权限…

文章目录

  • 前言
  • 一、微服务鉴权
    • 1.1 前端权限检查
    • 1.2 后端权限检查
    • 1.3 优缺点
  • 二、网关鉴权
    • 2.1 接口权限存储至Redis
    • 2.2 网关鉴权做匹配
  • 总结

前言

在微服务架构中,如何通过网关鉴权结合Redis缓存提升权限控制的效率与性能。首先,文章对比了两种常见的权限检查方式:前端权限检查和网关鉴权。前端权限检查可以实现精细化的权限控制,但每个接口需要加注解,操作繁琐;而网关鉴权通过在网关层统一处理权限验证,减少了后端服务的负担,但对于Restful风格的API缺乏精细化控制,并且可能影响网关性能。

一、微服务鉴权

在这里插入图片描述

1.1 前端权限检查

前端通过if-else判断用户是否配置按钮权限,以此来显示或者隐藏,前端参考代码如下:

在这里插入图片描述

1.2 后端权限检查

后端通过@PreAuthorize注解来检查权限方法,这就是spring security提供的方法级别的权限拦截,使用的时候我们需要开启方法拦截,如下:

在这里插入图片描述
在需要权限拦截的方法上加入注解:

在这里插入图片描述
当然还有角色标识的拦截:

在这里插入图片描述

1.3 优缺点

前端权限检查的方式,据我所接触到的项目,基本都是这种壳子,还有哪些特殊的方式,欢迎大家评论区留言,小编也想参考学习。

优点: 比较灵活,可以达到精细化控制,比如RestFul风格的api,只需要一个注解即可达到控制的效果。
缺点: 太繁琐了,每个接口都要加这个注解,并且微服务OAuth2体系中,一般需要提供一个资源服务来做鉴权。

二、网关鉴权

网关授权就是基于接口路径匹配,请求在经过网关的时候校验当前请求的路径是否在用户拥有的资源路径中。

优点: 所有后端服务不需要关注接口权限,不用加注解那么繁琐。
缺点: 如果项目是RestFul风格的api,不能精细化的控制,其次会影响网关的性能。

针对网关鉴权的缺点,我们可以做一些改进,比如项目不采用RestFul风格的api编写,其实市面上很少有全部遵循RestFul风格的代码,我们将请求入参统一采用对象接受,并且每个接口方法都是唯一的,如新增和修改隔离开来,这样就可以解决精细化控制问题,其次性能上面,我们可以将角色拥有的资源路径存储在redis中与之比对,这样就加快鉴权速度,也提升了性能。

2.1 接口权限存储至Redis

核心代码如下:

redisUtils.setCacheSet(ROLE_METHOD_KEY + roleCode, methods);

在这里插入图片描述

2.2 网关鉴权做匹配

核心代码如下:

// 网关鉴权
boolean status = authorities != null && authorities.stream().anyMatch(userRole -> redisUtils.hasCacheSet(RedisCacheConstants.ROLE_METHOD_KEY + userRole, methodUrl));
if (!status) {log.warn("403 Unauthorized resource handler,username:{}, methodUrl:{}", username, methodUrl);return RestExceptionHandler.responseErrorJson(exchange, ResultEnum.ACCESS_UNAUTHORIZED);
}

我们通过Redis的 isMember() 方法来检测路径是否匹配,其时间复杂度是 O(1),对于 Redis 来说,它的性能非常好。通过将权限数据存储到Redis,可以避免每次请求都进行数据库查询,提高系统的响应速度和吞吐量。

总结

随着微服务架构的发展,使用网关进行权限鉴权结合Redis缓存是一种高效且安全的解决方案。通过这种方式,能够减轻后端服务的开发压力,同时在保证权限控制精度的同时,也提升了系统的性能。对于需要高并发、高性能的分布式系统,采用此方法具有显著优势。

http://www.dinnco.com/news/69799.html

相关文章:

  • 怒江网站制作资源猫
  • 儿童做网站百度seo排名点击
  • seo外包公司哪家好网站关键词优化系统
  • 手机网站微信链接怎么做的产品推广方式及推广计划
  • 傻瓜式建站软件下载windows优化
  • 萝岗营销型网站建设凯里seo排名优化
  • 做视频有赚钱的网站有哪些兰州网站开发公司
  • 网站建设需要的技术搜索引擎网站提交入口
  • 做网站的公司推荐宁德市地图
  • 重庆住房与城乡建设部网站百度竞价点击工具
  • excel表如何做网站连接百度小说排行榜2020前十名
  • 网站做icp备案需要多久广州网络推广公司排名
  • 玉泉路网站制作关键词批量调词 软件
  • 本地网站建设天津seo实战培训
  • 做ppt会去什么网站找图手机360优化大师官网
  • 怎么做视频在线播放网站seo优化的优点
  • 免费网站无需下载直接观看seo怎么优化排名
  • 做网站一般是怎么盈利培训总结心得体会
  • 青岛网站建设在哪seo管理系统创作
  • 曹县 做网站的公司站长工具同大全站
  • 东莞网站平台价格百度云盘资源
  • 任意做别的公司网站销售产品违法吗外贸平台app
  • 济南品质网站建设费用评论优化
  • 学网站开发看什么书网络推广是什么专业
  • 软件b2c网站建设设计好看的网站
  • 全网最大的精品网站百度推广怎么添加关键词
  • 网站建设有啥费用网站推广的渠道有
  • 网站建设 案例培训心得体会总结简短
  • 青岛网站设计机构北京seo供应商
  • 全面的聊城网站建设培训班有哪些课程