一套完全开源,支持多租户,界面配置单点的后端框架JVS

JVS的多租户体系统

在IT系统中,“租户”(tenant)通常用于指代一种多租户架构(multi-tenancy),它是一种软件架构模式,允许多个用户或组织共享相同的应用程序或系统实例,但彼此之间的数据和配置被隔离开来,保证每个租户的数据隐私和安全性。

在一个多租户系统中,一个实例的应用程序或服务同时为多个租户提供服务,每个租户通常被认为是相互独立的,拥有自己的用户、数据、配置和权限。租户可以是不同的组织、公司、部门或个人用户。通过采用多租户架构,企业在一个统一的系统实例中可以为多个客户提供服务,从而节省了资源成本和维护开销,同时简化了系统的部署和管理。每个租户可以根据自己的需求进行定制和配置,而不会相互干扰。

JVS的多租户架构是通过逻辑隔离的方式实现,每个租户的数据和配置在数据库或存储系统中被分开存储,并使用安全访问控制规则进行管理。

JVS多租户模式

JVS的多租户模式如下图所示,在JVS的基础框架上,构建了两类租户(主租户和子租户),主租户在平台中有且只有唯一一个,子租户可以开多个租户。租户之间的数据是隔离的,如下图所示:

主租户可以配置的功能包括运维设置和平台管理,其中运维设置是与整个JVS基础底座相关的配置选项,配置入口如下图所示:

平台配置是本租户下的相关功能的设置,配置入口如下:

子租户只有平台管理的功能。

用户与租户关系

用户与租户支持多对多的关系,一个用户可在多个租户中切换(实际上,可能存在一个用户在多个公司任职的情况)

用户可以在多个租户之间做切换,如下图所示:

租户的创建

用平台的管理员点击运维设置,点击菜单上的租户管理,进入租户的管理界面,如下图所示,右侧展示的已经配置的租户

点击新增按钮,弹出新增租户的表单

其中 ,需要配置租户的公司名称,需要填写管理员的账号,这个是租户管理员的账号,这个账号是可以进入到系统中去创建组织、角色、用户等操作,可以分配对应的管理权限等。

用户加入租户

用户加入某个租户组织有两种模式,全新用户和已经有的用户引入租户两种模式:

  • 全新用户加入组织,那么这种方式是在平台管理中,增加创建一个用户

  • 管理员将已经存在的用户引入租户,通过发送租户邀请码的方式加入租户

这里的邀请码是有时间限制,可以配置是否需要管理员审核的控制

用户收到邀请码后,可以在如下图所示的地方,点击加入组织

输入组织邀请码:

用户审核,如果在生成邀请码时,设置了管理员审批的用户,管理员可以在用户审核处 完成已有用户进入租户的审核

用户主动创建租户

用户可以创建新的租户

需要填写公司名称,默认用户密码,如下图所示

用户切换租户

用户点击个人中心,可以切换租户

选择不同租户选项,则进入对应的租户

JVS基础框架开源地址:https://gitee.com/software-minister/jvs

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/20539.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lwip-2.1.3自带的httpd网页服务器使用教程(一)从SD卡读取网页文件并显示

概述 本教程使用的单片机是STM32F103ZE,有线网口芯片为ENC28J60。 本教程里面的网页由于需要兼容Windows XP系统的IE8浏览器,所以采用HTML 4.01编写,不使用任何前端框架。笔者使用的网页设计软件是Adobe Dreamweaver CS3。 开发板PCB文件是公…

运维小知识(一)——centos系统安装(小白入门级)

目录 1.制作系统U盘 2.安装centos系统 3.系统配置 3.1【语言】配置​编辑 3.2【软件选择】配置 3.3【安装位置】配置 3.4【主机名、root密码、网络】配置 1.制作系统U盘 首先下载软件ventoy,制作系统U盘,买个新U盘。先在笔记本电脑安装ventoy软件&a…

产品经理学习画原型(三)

1.布尔运算的使用 合并必须选择两个及以上元件 合并后: 组合: 去除顶层:

常用API学习01(Java)

Math Math是一个帮助我们用于进行数学计算的工具类。私有化的构造方法,所有方法都是静态的。 Math类的常用方法: public static int abs(int a) 获取参数绝对值 public static double cell(double a) 向上取整 public static double floor(…

全链路Python环境迁移

全链路Python环境迁移 在当前的Python环境中,安装一些库以后,如果换了一套Python环境,难道再来一次不停的pip install?当然不是。 第一步,使用pip freeze(冻结)备份当前Python库的环境 pip f…

linux 服务器之间传输文件的方式

情景:有时迁移项目,一般人就想到需要在服务器下载到win本地电脑上面,再上传到目的服务器,这样若是文件大,下载的速度都足够让你歇一天了。遇到这问题,怎么解决呢? 方法1:scp 【优点…

《向量数据库指南》——传统数据库上的向量搜索插件

传统数据库上的向量搜索插件 很好,现在我们已经知道了向量搜索库和向量数据库之间的区别,下面让我们来看看向量数据库与向量搜索插件有何不同。 很多传统关系型数据库和搜索系统,如 ClickHouse 和 Elasticsearch,都包含内置的向量搜索插件。例如,Elasticsearch 8.0 包…

智慧班牌源码,融合人脸识别、即时通讯等技术,与智慧校园中各类系统互联互通

电子班牌系统又称之为智慧班牌,是当前校园数字化信息化建设、文化建设的主流,是校园日常工作安排、校园信息发布、班级文化风采展示、课堂交流的重要应用载体。智慧班牌系统在传统信息发布和校园文化展示功能基础上,融合了人脸识别、即时通讯…

前端Vue自定义加载loading组件 通过设置gif实现loading动画 可用于页面请求前loading

随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。 通过组件化开发,可以有效实现…

NAS私有云存储 - 搭建Nextcloud私有云盘并公网远程访问

文章目录 摘要视频教程1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访问 4 配置固定http公网地址4.1 保留一个二级子域名4.1 配置固定二级子域名4.3 测试访问公网固定二级子域名 摘要 Nextcloud,它是ownCloud的一个分支,是一个文…

今日分享——语音同声翻译软件

安娜和卡洛是一对在旅行时偶遇的年轻男女,他们互有好感,但他们来自不同的国家,说着不同的语言。每次面对彼此的时候,他们总是陷入语言的困扰,无法用自己熟悉的语言表达内心的情感。因此他俩都十分需要一款翻译语音的软…

使用STM32 再实现感应开关盖垃圾桶

硬件介绍 SG90舵机 如上图所示的舵机SG90,橙线对应PWM信号,而PWM波的频率不能太高,大约50Hz,即周期0.02s,20ms左右。 在20ms的周期内,高电平占多少秒和舵机转到多少度的关系如下: 0.5ms-----0度…