python RBAC权限控制模型扩展 基于JWT实现
2024-09-02 10:47:03
jwt,全称 json web token,是使用一定的加密规则生成的token串来保证登录状态、验证用户身份、做权限认证等工作
以往保存用户登录状态多用session实现,但是当服务涉及多台服务器分布式集群部署时,session在服务器之间共享就会耗费大量的服务器资源
而jwt生成的token串保存在客户端,并含有服务器自带的secert-key实现验证,也就是说服务器端只是生成token和验证token,而token却是保存在客户端,
那么这样的话,服务器就不会耗费大量资源在保存用户登录信息和权限认证上面了。而jwt说白了,就是在用户登录时保存用户的用户信息及用户的登录时间,
每次验证时使用secert key解密获取用户信息,并验证登录时间与当前时间的差值,与config中设置的过期时间对比,验证token是否过期。
rbac是一个基于角色实现的权限控制模型,如下图所示
这就是rbac的基本流程,而jwt的作用就是保存用户信息,根据用户信息判断是否有调用权限再继续向下运行
具体jwt实现的代码就不贴出来了,网上有很多的帖子了
最新文章
- 最常见的 20 个 jQuery 面试问题及答案
- ios中的http:get,post,同步,异步
- 【python】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
- container error log
- ScriptManager与UpdatePanel总结
- 动态加载DLL函数GetProcAddress错误
- IE8中能继续使用Expression的解决方案
- 防范 DDoS 攻击的 15 个方法
- poj 2975 Nim(博弈)
- Asp.net中具体的日期格式化用法
- vim 常用快捷键 二[转]
- SQL随机查询,显示行号,查询数据段
- OpenCV探索之路(二十一)如何生成能在无opencv环境下运行的exe
- SpringCloud学习之eureka集群配置
- 爬虫基础之urllib库(代码演示)
- springMVC之一(页面<;--->;控制器 互相传值,转发和重定向)
- MVC 在action方法中获取当前action的控制器名和action名
- 2018.10.12 NOIP模拟 棋盘问题(切比雪夫距离)
- ArcMap2SLD添加中文支持
- elasticsearch ik中文分词器安装