开源UNI-SOP云统一认证平台

devtools/2024/9/25 1:58:44/

       今天给大家分享一款开源的商用级别认证平台UNI-SOP,这块软件分为开源版本和专业版本,由于专业版涉及到一些代码授权问题,暂时未开源,不过,一般应用开源版本足够了。

        先来看看系统管理平台界面,然后我们再来说说认证的流程和原理。

        登录后的认证中心平台管理界面:

        系统支持多平台多领域用户集管理,这个界面是平台的管理界面,能够增加平台、导出平台资源以及更新平台缓存等功能。

        领域管理界面:

        

        领域界面用来关联用户集的,每个平台需要关联一个领域,标识可以登录此平台的用户集。

        平台资源管理界面:

        平台管理页面主要用来管理关联的领域用户以及平台资源,平台资源包括客户端、菜单、角色、权限、地址、系统字典等,其把我们后台系统公共的资源集中进行管理,让业务平台更专注自己的业务逻辑处理,使得系统开发更高效和稳定。

        用户资源的分配管理界面:

        此页面展示了用户资源的分配,其不仅展示直接分配给用户的资源,还标注了间接分配给用户的资源信息,比较直观、方便。里面的功能还比较多,有时间的小伙伴可以下载源码自己部署进行摸索看看其他功能。

        不过,上面这些页面是专业版的,开源版和这个有些差别。

        除了在统一认证中心可以集中管理平台和用户资源外,我们还提供了前端开发脚手架,可以对单个平台完成自己资源的管理,比如下面这个系统是使用UNI-SOP前端脚手架开发的:

        

        其中标红部分就是平台资源的管理,属于UNI-SOP脚手架的功能,此脚手架采用VUE3+Element Plus开发。下面开始说下认证的一些基本概念。

        用户认证其实包括两部分:认证和授权

        认证就是验证用户的合法性,我们输入的用户名对应的用户是不是系统中合法的用户;授权顾名思义就是登录的用户有哪些可以访问的系统资源(也可以理解为权限,很多系统意思大概相近,在UNI-SOP中权限就是系统资源),在介绍UNI-SOP开源云平台认证系统之前,我们先来说下认证中的相关概念。

        我们先简单看下下面的这张图:

        

        上图包括了五大模块:用户、平台、认证、授权、平台中心。认证其实只和认证模块和用户模块有关,我们先来看看用户认证需要的几大要素:账号、认证信息和用户信息。

        账号:用来唯一识别系统中的用户的基本信息,就是说通过账号信息,我们可以唯一找到系统中的用户信息,注意,这里是唯一,因为这里的用户是一个实体,所以,用户账号和用户信息具有一对一的关系。

        认证信息:用来识别用户合法性的基本信息单位,因为找到了用户,不等于用户可以合法访问我们的系统,因此,需要验证用户的合法性,最常用的认证信息就是密码验证,移动领域手机验证码和微信授权登录也尝尝用来认证一个用户的合法性。

        用户信息:保存系统中用户一系列信息的属性集合,比如用户姓名、性别、地址等等都可以是用户信息,因为用户是一个实体,所以用户一旦创建就拥有实体标识:用户ID,因此,用户ID和用户账号以及认证信息是一对多的关系,但是要注意,用户账号和用户ID必须是一对一关系。

        用户认证完后就有了访问系统的基本条件,但是要访问我们的系统,还不够,需要登录的用户拥有对应的系统资源,这里就是平台模块要管的事情。

        平台模块统一管理了平台信息以及平台所有的资源,比如菜单、角色、权限、地址等等都属于平台的资源,然后,我们把平台的某些资源分配给指定用户,这样用户就可以访问这些资源了,比如我们某些菜单分配给资源,再配合前端展示,用户登录前端系统就可以看到自己分配的菜单了,这就是目前前端系统采用的权限控制,其实,严格来讲,菜单并不等于系统的资源,因为系统资源的粒度会更细。

        有了用户和平台,然后认证模块就可以使用用户模块提供的服务,完成用户的验证,然后生成用户的认证信息,比如访问令牌,登录超时控制等;授权模块利用平台模块提供的服务完成对用户资源的分配,平台中心利用其他四个模块,提供对外的综合服务功能,比如管理多个平台,多套用户集合,配合前端完成平台、用户的管理等操作,基本概念介绍完了,我们看下UNI-SOP的整体设计,下面是其整体设计结构图。

        UNI-SOP一套完整的多平台、多用户集的统一认证系统,其除了基本的用户认证和权限系统外,还集中管理了多平台资源,每个平台在UNI-SOP中都是独立的,拥有的独立的资源;用户采用领域的概念来隔离不同的用户集。每一个领域中的用户都是独立的。

        我们先简单分享到这里,后面再详细说下认证的流程,比如普通登录和单点登录,以及UNI-SOP中提供的功能。


http://www.ppmy.cn/devtools/116762.html

相关文章

supermap iclient3d for cesium模型沿路径移动

可以直接settimeout隔一段时间直接设置位置属性,但是得到的结果模型不是连续的移动,如果想要连续的移动,就需要设置一个时间轴,然后给模型传入不同时间时的位置信息,然后就可以了。 开启时间轴 let start Cesium.Jul…

Centos中dnf和yum区别对比

dnf和yum是两种不同的包管理工具,它们各自具有独特的特点和优势,主要用于在Linux系统上安装、更新和卸载软件包。以下是dnf和yum之间的主要区别: 1. 依赖关系解决 dnf:dnf在处理依赖关系方面表现出更强的能力。它能够更高效地解…

SCP下载文件

在 Kali Linux 中,如果你需要通过 SSH 下载远程服务器上的文件到本地,可以使用 scp(secure copy)命令,这是 SSH 协议中的一个工具,用于在本地和远程之间复制文件。scp 允许你安全地传输文件,操作…

CST电磁仿真77GHz汽车雷达保险杠

77G毫米波雷达仿真时,要考虑天线罩和保险杠的影响。通常保险杠都是多层结构,有的层非常薄。如果采用传统的3D建模方法,会导致网格数量巨大,进而影响到求解效率。 三维保险杠(bumper)模型如下图所示&…

输入5个数,求中值,verilog实现

1实现思路 有5个数a,b,c,d,e 将其分为3组&#xff0c;ab, cd, e e留到最后再比较&#xff0c; 先比较ab 和 cd 设得出了ab的较小值 a a < b 设得出了cd的较小值 c c < d 第一个分支 比较ac, 设a < c 那么 a < c < d &#xff0c; a < b 将b&#xff0c;e…

基于深度学习的可再生能源的效率优化

基于深度学习的可再生能源效率优化是一种应用先进人工智能技术来提升太阳能、风能、水能等可再生能源的生产和利用效率的策略。可再生能源的生产效率通常受限于不稳定的自然条件&#xff08;如日照、风速等&#xff09;&#xff0c;深度学习能够通过分析历史数据和实时环境信息…

golang Unicode api接口

函数名参数返回值解释Inr rune, ranges …*RangeTableboolrune是否属于其中一个范围的成员。IsrangeTab * RangeTable&#xff0c;r runebool报告符文是否在指定的范围表中。IsControlr runeboolIsControl rune是否为控制字符。C &#xff08;其他&#xff09;Unicode 类别包含…

在Windows系统上安装的 zstd C++ 库

在Windows系统上安装的 zstd C 库 项目地址:安装步骤步骤一步骤二 效果 项目地址: https://github.com/facebook/zstd 经过观察发现,这个项目没有CMakeLists.txt,只有Makefile,但是Makefile在windows系统下没有什么用, 所以说,常规的方式安装不可取了 安装步骤 步骤一 往下…