# 引言
在现代中大型系统中,权限控制需要同时满足 安全性、灵活性与可维护性。针对不同层次的权限诉求,我们构建了一个三层权限模型,分别使用:
- 认证(Authentication):控制系统级访问
- RBAC(Role-Based Access Control):控制模块、菜单、组件及接口访问
- ABAC(Attribute-Based Access Control):控制数据级访问,实现数据隔离和授权查询
一、系统架构概览
┌────────────┐
│ 身份认证层 │ → 控制系统访问(是否能登录系统)
└────┬───────┘
↓
┌────────────┐
│ RBAC 权限层│ → 控制功能访问(菜单、按钮、接口)
└────┬───────┘
↓
┌────────────┐
│ ABAC 数据层│ → 控制数据访问(数据过滤、数据隔离)
└────────────┘
二、各层设计要点
1、认证层(Authentication)
身份认证是权限体系的基础,目标是确认访问者是谁,只有在确认用户身份后,才有资格进一步判断其权限。其实认证都是我们常说的登录,只有登录成功的用户才能够继续访问系统。当然对于一部分功能,允许未登录的匿名用户进行访问。