这道题真问过 (JD)
权限认证概述
- 权限认证在后台管理系统中难度较大且至关重要,常见的实现方式是 RBAC 权限模型。
- RBAC 即基于角色的访问控制,主要包含用户、角色和权限三个基础部分。
RBAC 权限模型表结构
- 五张表结构:包括用户表(t - user)、角色表(t - role)、权限表(t - permission),以及用户与角色的中间表、角色与权限的中间表。用户和角色、角色和权限均为多对多关系。
- 七张表结构(拓展):在五张表基础上加菜单表,菜单表与权限也是多对多关系,并有相应中间表,但五张表形式最为常见。
权限查找实例分析
RBAC 模型数据流转方式
- 用户登录后,先查询其拥有的角色列表,再通过这些角色到权限表中查询相应权限,此即 RBAC 模型数据流转的基本过程。
权限框架介绍
- 在实际开发中,实现权限认证常借助权限框架。目前流行的有阿帕奇的 Shiro 和 Spring Security,其中 Spring Security 应用最为广泛。
面试回答要点
- 若简历涉及后台管理系统,回答权限认证问题时核心要点有二:一是详细介绍 RBAC 模型的五张表结构及关系;二是说明使用的权限框架,如 Spring Security,重点在于清晰阐述 RBAC 模型相关内容。