帮我设计一套完整的RBAC体系表结构,包含用户表、角色表、菜单表、部门表,支持权限控制和数据权限
时间: 2024-01-20 17:04:02 浏览: 262
基于RBAC权限管理数据库表设计
4星 · 用户满意度95%
好的,以下是一个简单的RBAC体系表结构:
1. 用户表(user)
- id:用户ID,主键
- username:用户名,唯一且不为空
- password:密码,加密存储
- email:电子邮箱,唯一且不为空
- phone:手机号码,唯一且不为空
- status:用户状态,0表示禁用,1表示启用
- create_time:创建时间
- update_time:更新时间
2. 角色表(role)
- id:角色ID,主键
- name:角色名称,唯一且不为空
- description:角色描述
- status:角色状态,0表示禁用,1表示启用
- create_time:创建时间
- update_time:更新时间
3. 菜单表(menu)
- id:菜单ID,主键
- name:菜单名称,唯一且不为空
- url:菜单URL
- icon:菜单图标
- parent_id:父菜单ID
- order_num:排序号
- create_time:创建时间
- update_time:更新时间
4. 部门表(department)
- id:部门ID,主键
- name:部门名称,唯一且不为空
- parent_id:父部门ID
- order_num:排序号
- create_time:创建时间
- update_time:更新时间
5. 用户角色关系表(user_role)
- user_id:用户ID,主键,与用户表关联
- role_id:角色ID,主键,与角色表关联
6. 角色菜单关系表(role_menu)
- role_id:角色ID,主键,与角色表关联
- menu_id:菜单ID,主键,与菜单表关联
7. 角色部门关系表(role_department)
- role_id:角色ID,主键,与角色表关联
- department_id:部门ID,主键,与部门表关联
其中,用户表、角色表、菜单表、部门表是基础表,用户角色关系表、角色菜单关系表、角色部门关系表是关系表,用于连接基础表。这些表结构可以支持权限控制和数据权限,具体实现方式需要根据具体业务需求来调整。
阅读全文