之前权限管理1.0是采用的Shiro来完成的。但是由于后来各个模块的开发并入,为了方便服务层微服务的接入,引入了Zuul API网关做路由转发。本次2.0方案主要是针对经过Zuul进行转发的API进行更细粒度的权限校验。
通过这张图可以看出,在1.0的时候只是草率的把Zuul并了进去,并且简单做了登录认证,但是并没有对Zuul转发的路由做授权认证。
2.0 对比1.0就是在Zuul转发前增加了一层权限校验。
新增菜单按钮的时候填写的权限信息新格式为
{REQUEST_METHOD}:{REQUEST_URI}
例如
POST:/om-logic/defeact/search
POST:/allAcl/acls/**
仅仅对网关层进行变动即可
这次变动整体的思路就是尽可能的对原架构进行小的调整,最后思考后采用这种方案实现起来代价最小,只需要更改网关的Zuul的前置filter。
这个方案的优点在于:
PS:其实最省心的权限管控的方案是IP白名单