权限验证
核心思想
所谓权限验证,验证的外围就是以后账号是否领有一个权限码 有:就让你通过、没有:那么禁止拜访 再往底了说,就是每个账号都会领有一个权限码汇合,我来验证这个汇合中是否包含我须要检测的那个权限码 例如:以后账号领有权限码汇合:[“user:add”, “user:delete”, “user:get”],这时候我去验证权限码:”user:update”,则后果就是验证失败,禁止拜访 所以当初问题的外围就是:
- 如何获取一个账号所领有的的权限码汇合
- 本次操作要验证的权限码是哪个
获取以后账号权限码汇合
因为每个我的项目的需要不同,其权限设计也变幻无穷,【获取以后账号权限码汇合】这一操作不可能内置到框架中,所以 sa-token 将此操作以接口的形式裸露给你,以不便的你依据本人的业务逻辑进行重写
- 你须要做的就是新建一个类,重写 StpInterface 接口,例如以下代码:
- 可参考代码:码云:StpInterfaceImpl.java
验证是否蕴含指定权限码
而后就能够用以下 api 来鉴权了
拦挡全局异样
有同学要问,鉴权失败,抛出异样,而后呢?要把异样显示给用户看吗?当然不能把异样抛给用户看,你能够创立一个全局异样拦截器,对立返回给前端的格局,例如以下示例:
- 可参考:码云:GlobalException.java
写在最初
源码开源,作者不易,如果你喜爱这个框架麻烦你顺手点一颗小星星哦!
- 官网文档:http://sa-token.dev33.cn/
- Gitee 开源地址: https://gitee.com/sz6/sa-token
- GitHub 开源地址: https://github.com/click33/sa-token