基于多租户的用户权限和数据模型的数据库结构

一、概述

1. 数据库结构概述

该数据库结构支持多租户环境下的用户权限管理和数据模型管理,适用于业务系统的数据结构及权限控制。设计中包含了用户数据、权限数据、枚举数据以及数据模型管理等方面。

2. 用户与权限管理

  • 用户数据:记录所有用户的详细信息,包括但不限于用户名、密码、联系方式等。
  • 权限数据
    • 部门权限:定义不同部门内的访问权限。
    • 小组权限:细化到小组层面的权限设置。
    • 用户权限:针对单个用户的个性化权限分配。
    • 租户权限:确保每个租户的数据隔离及其相应的访问权限。

3. 权限类型

  • 前端菜单权限:控制用户可见的前端界面元素。
  • 后端接口权限:管理对后端API的访问控制。
  • 租户权限:保证各租户之间的数据隔离和访问控制。

4. 数据模型管理

  • 业务系统数据结构管理:维护业务系统的数据结构,确保数据的一致性和完整性。
  • 前端页面配置数据:支持前端页面上的数据展示样式和操作逻辑的配置。

5. 枚举数据管理

  • 枚举类型数据:统一管理业务中常见的下拉选项或其他枚举类型的值,提高数据的一致性和可维护性。

6. 技术选型建议

  • MyBatis-Plus:用于简化持久层开发,提供自动映射等功能。
  • Shiro权限框架:实现细粒度的权限控制和认证机制。

7. 数据权限管理

  • 数据模型数据:利用数据模型中的配置来统一管理数据权限,确保不同层级(如部门、小组和个人)的用户只能访问他们被授权的数据。

二、数据结构

auth_engine.sys_data_field

字段名数据类型描述
idbigint(0)ID
data_model_idbigint(0)数据模型ID
field_namevarchar(255)字段名称
prop_namevarchar(255)prop
title_namevarchar(255)Title名称
group_namevarchar(255)分组(具体含义找前端)
fontend_typevarchar(50)前端类型
readonlyvarchar(255)只读
sort_abletinyint(1)是否排序
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人
grid_layoutint(0)栅格
link_routervarchar(255)链接路由

auth_engine.us_permission

字段名数据类型描述
idbigint(0)权限ID
menu_idbigint(0)菜单ID
namevarchar(50)权限名称
codevarchar(50)CODE
descriptionvar描述
data_modelvarchar(255)数据模型
resourcesvarchar(255)资源
permsvarchar(255)权限标识
perm_urlsvarchar(255)路径
router_namevarchar(255)路由名称
iconvarchar(255)图标
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
client_namevarchar(255)客户端
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_user

字段名数据类型描述
idbigint(0)用户ID
user_namevarchar(50)用户名
real_namevarchar(50)真实姓名
login_namevarchar(50)登录名
login_pwdvarchar(255)登录密码
login_saltvarchar(50)密码盐
user_novarchar(50)用户编号
mobilevarchar(50)手机号
open_idvarchar(50)微信OPENID
avatarvarchar(255)用户头像
introductionvarchar(255)介绍
main_dept_idbigint(0)主属部门ID
sub_dept_idsvarchar(1000)副属部门ID
main_post_idbigint(0)主属职位ID
sub_post_idsvarchar(1000)副属职位ID
group_idsvarchar(1000)所属组ID
superior_idbigint(0)直属领导ID
genderint(0)性别ID
rank_idbigint(0)职级ID
role_idbigint(0)角色ID
identityvarchar(50)身份证号
birthdatedatetime(6)出生日期
addressvarchar(255)联系地址
car_novarchar(10)车牌号
phonevarchar(50)座机号
emailvarchar(50)邮箱
checkin_timedatetime(6)入职时间
quit_timedatetime(6)离职时间
fail_countint(0)登录失败次数
retire_timedatetime(6)退休时间
sortint(0)排序
typeint(0)类型
stateint(0)状态
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint UNSIGNED创建人
update_timedatetime(6)更新时间
update_userbigint UNSIGNED更新人
versionint(0)版本
specialtyvarchar(100)专业
companyvarchar(100)所属公司
work_typevarchar(50)工种
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.tenant_info

字段名数据类型描述
idbigint(0)租户id
tenant_namevarchar(255)租户名称
tenant_codevarchar(255)租户编码
exp_timedatetime(0)到期时间
principalvarchar(255)负责人
phonevarchar(255)联系电话
datasource_urlvarchar(255)数据源url
datasource_usernamevarchar(255)数据源用户名
datasource_passwordvarchar(255)数据源密码
datasource_drivervarchar(255)数据源驱动
sys_accountvarchar(255)系统账号
sys_passwordvarchar(255)账号密码
sys_projectvarchar(255)系统PROJECT
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_role

字段名数据类型描述
idbigint(0)角色ID
role_namevarchar(50)角色名
role_codevarchar(50)CODE
app_idbigint(0)所属应用
descriptionvarchar(255)描述
levelint(0)级别
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.tenant_perm

字段名数据类型描述
idbigint(0)角色权限ID
tenant_idbigint(0)角色ID
perm_idbigint(0)权限ID
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_menu_perm

字段名数据类型描述
idbigint(0)ID
menu_idbigint(0)菜单ID
perm_idbigint(0)权限ID
sortint(0)排序
typeint(0)类型
stateint(0)状态
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint UNSIGNED创建人
update_timedatetime(6)更新时间
update_userbigint UNSIGNED更新人
versionint(0)版本
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_user_role

字段名数据类型描述
idbigint(0)用户角色ID
user_idbigint(0)用户ID
role_idbigint(0)角色ID
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.sys_app_service (应用服务表)

字段名数据类型描述
idbigint(0)应用服务ID
app_idbigint(0)应用ID
service_idbigint(0)服务ID
remarkvarchar(255)备注
create_userbigint(0)创建人
create_timedatetime(0)创建时间
update_userbigint(0)更新时间
update_timedatetime(0)更新时间
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
sortint(0)排序
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.sys_application (系统应用表)

字段名数据类型描述
idbigint(0)应用ID
namevarchar(50)应用名称
codevarchar(50)应用编码
ipvarchar(255)应用IP地址
portint(0)端口
remarkvarchar(255)备注
sortint(0)排序
create_userbigint(0)创建人
create_timedatetime(0)创建时间
update_userbigint(0)更新人员
update_timedatetime(0)更新时间
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_department

字段名数据类型描述
idbigint(0)部门ID
namevarchar(50)部门名称
codevarchar(50)部门编码
levelint(0)部门等级
role_idbigint(0)角色ID
sortint(0)排序
super_dept_idbigint(0)上级部门ID
managerbigint(0)主管
remarkvarchar(255)注释
typeint(0)部门类型
stateint(0)部门状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_menus

字段名数据类型描述
idbigint(0)权限ID
namevarchar(50)权限名称
codevarchar(50)CODE
descriptionvarchar(255)描述
levelint(0)等级
super_menu_idbigint(0)上级权限ID
data_model_idbigint(0)数据模型ID
data_modelvarchar(255)数据模型
resourcesvarchar(255)资源
permsvarchar(255)权限标识
perm_urlsvarchar(255)路径
router_namevarchar(255)路由名称
iconvarchar(255)图标
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
client_namevarchar(255)客户端
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_role_menu_perm

字段名数据类型描述
idbigint(0)角色权限ID
role_idbigint(0)角色ID
menu_perm_idbigint(0)菜单权限ID
menu_idbigint(0)菜单ID
perm_idbigint(0)权限ID
permsvarchar(255)唯一权限标识
data_rulesvarchar(2000)数据规则
data_sortsvarchar(2000)排序规则
op_fieldsvarchar(2000)可操作字段
eq_login_fieldvarchar(200)等于登录人字段
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_user_cloumn

字段名数据类型描述
idbigint(0)ID
fixedCloumntext列固定
showCloumntext列展示
sortCloumntext列排序
widthCloumntext列宽
user_idbigint(0)用户Id
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_position

字段名数据类型描述
idbigint(0)ID
post_namevarchar(50)职位名称
post_codevarchar(50)CODE
role_idbigint(0)职位角色ID
remarkvarchar(255)注释
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.sys_enum_type (枚举类型)

字段名数据类型描述
idbigint(0)枚举类型ID
namevarchar(50)枚举型名称
codevarchar(50)CODE
quotevarchar(255)引用的表字段
descriptionvarchar(255)描述
type_super_idbigint(0)父ID
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.sys_enumerate (枚举)

字段名数据类型描述
idbigint(0)枚举ID
namevarchar(50)枚举名称
codevarchar(50)CODE
enum_valueint(0)枚举值
descriptionvarchar(255)描述
type_idbigint(0)枚举型ID
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.sys_data_model

字段名数据类型描述
idbigint(0)ID
model_namevarchar(255)模型名称
table_namevarchar(255)表名称
vo_namevarchar(255)对应VO名称
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint UNSIGNED创建人
update_timedatetime(6)更新时间
update_userbigint UNSIGNED更新人
remarkvarchar(255)备注
descriptionvarchar(255)描述
module_namevarchar(255)模块名称
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.us_group

字段名数据类型描述
idbigint(0)ID
namevarchar(255)小组名称
codevarchar(255)小组代码
role_idbigint(0)角色ID
remarkvarchar(255)注释
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人
update_user_namevarchar(255)更新人

auth_engine.sys_service_relation

字段名数据类型描述
idbigint(0)ID
service_idbigint(0)服务ID
client_idbigint(0)客户端ID
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人

auth_engine.sys_services

字段名数据类型描述
idbigint(0)ID
secretvarchar(255)密码
namevarchar(255)服务名称
create_timedatetime(6)创建时间
create_userbigint(0)创建人
update_timedatetime(6)更新时间
update_userbigint(0)更新人
sortint(0)排序
typeint(0)类型
stateint(0)状态
versionint(0)版本
is_deletedtinyint UNSIGNED是否删除
tenant_idbigint(0)租户
trace_idvarchar(60)traceId
create_user_namevarchar(255)创建人

auth_engine.undo_log

字段名数据类型描述
idbigint(20)主键
branch_idbigint(20)分支事务ID
xidvarchar(100)事务ID
contextvarchar(128)事务上下文
rollback_infoblob回滚信息
log_statusint(11)日志状态
log_createdtimestamp创建时间
log_modifiedtimestamp修改时间
extvarchar(100)扩展信息

auth_engine.dictionary (数据字典)

字段名数据类型描述
idbigint UNSIGNEDID
tenant_idbigint(0)租户ID
parent_idbigint UNSIGNED父ID
typevarchar(50)字典类型
item_namevarchar(100)显示名
item_valuevarchar(100)存储值
descriptionvarchar(100)描述说明
extdatavarchar(200)扩展JSON
sort_idsmallint(0)排序号
is_editabletinyint(1)是否可改

请注意,一些通用的列如sort, type, state, version, is_deleted, create_time, create_user, update_time, update_user, tenant_id, trace_id, create_user_name, 和 update_user_name 在多个表中都有出现,这些列在上述表格中已经省略了重复的部分。

  • 18
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rainbow酱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值