Shiro 是当下常见的安全框架,主要用于用户验证和授权操作。

RBAC 是当下权限系统的设计基础,同时有两种解释:
一: Role-Based Access Control,基于角色的访问控制
即,你要能够删除产品,那么当前用户就必须拥有产品经理这个角色
二:Resource-Based Access Control,基于资源的访问控制
即,你要能够删除产品,那么当前用户就必须拥有删除产品这样的权限

基于 RBAC概念, 就会存在3 张基础表: 用户,角色,权限, 以及 2 张中间表来建立 用户与角色的多对多关系,角色与权限的多对多关系。 用户与权限之间也是多对多关系,但是是通过 角色间接建立的。

注: 一个用户可以有多种角色,一个角色也可以赋予多个用户。一个角色可以包含多种权限,一种权限也可以赋予多个角色。

在 Shiro 中存在 Realm 这么个概念, 那么 Realm 在 Shiro里到底扮演什么角色呢?
当应用程序向 Shiro 提供了 账号和密码之后, Shiro 就会问 Realm 这个账号密码是否对, 如果对的话,授权其所对应的用户拥有哪些角色,哪些权限。
Realm 得到了 Shiro 给的用户和密码后,去找数据库,查询信息该用户对应的角色和权限。
Realm 就是干这个用的,它才是真正进行用户认证和授权的关键地方。

最新文章

  1. Chrome调试手机页面
  2. 遍历所有表,取每个表的MAXID更新到ID控制表
  3. javascript原型方法
  4. android studio ndk 调试
  5. dragloader.js帮助你在页面原生滚动下实现Pull Request操作
  6. iOS - (TableView中利用系统的 cell 设置 cell.textlabel 位置和大小)
  7. (转)关于List中FindAll用法的一些简单示例
  8. POJ 1182 食物链(种类并查集)
  9. Educational Codeforces Round 5 B
  10. 征服 Nginx + Tomcat
  11. Maven学习小结(三 基本概念)
  12. Spark运行问题备忘一(网络搜集)
  13. IP地址变动后,https://localhost:1158/em无法访问解决办法
  14. Minimum Size Subarray Sum 解答
  15. Canvas 生成base64的PNG图片快照,So Amazing!!!
  16. LaTeX的图片插入及排版
  17. 可编辑的EditorGridPanel
  18. Tupper自我指涉公式生成器
  19. vuejs-devtools浏览器调试chrome插件
  20. Kubernetes1.91(K8s)安装部署过程(二)--证书kubeconfig文件创建

热门文章

  1. Linux系统终端session保持服务工具-Tmux
  2. FastDF step by step
  3. 解决---MISCONF Redis被配置为保存RDB快照,但目前无法在磁盘上存留。可能修改数据集的命令被禁用。请检查Redis日志,了解有关错误的详细信息。
  4. Integer梳理
  5. Python 入门基本知识
  6. 小米重新上锁[BL]
  7. Arduino系列之按键模块(一)
  8. 《ASP.NET Core 高性能系列》静态文件中间件
  9. 【干货】国外程序员整理的 C++ 资源大全–日常工作,我觉得用处确实很大,所以分享
  10. RC振荡电路