00:00
各位同学大家好,在前面呢,咱们完成了菜单管理相关功能,那下面呢,我们来学习下一个模块权限管理,在学习权限管理之前,特别强调要求各位同学注意啊,是要求不是希望要求各位同学把前面的基础知识掌握牢固之后再来学习本模块,因为本模块相对之前的角色用户菜单要稍微复杂些。那咱们回到我们主题,在权限管理模块中,我们主要完成以下几个内容,首先第一部分给大家先介绍一下什么是权限管理,权限管理中最基本的实现过程该怎么样,然后第二部分呢,咱们来完成里边的两个重要的接口,一个是用户登录,一个是获取用户信息,这过程中会整合一个内容叫JWT,通过JWT生成token,然后之后我们整个前端把权限管理完成最终的实现。
01:01
这个之后我们的第二部分,咱们整合一个框架security来完成权管理的进一步实现,通过security来完成用户认证,用户授权。以上是咱们要内容,那下面呢,我们第一个内容什么是权限管理,把这个给各位做个介绍,那咱们来看一下啊,首先大家看第一个词叫权限。那各位同学跟我想一下啊,比如说什么叫权限,咱们可以抛开我们的软件开发领域,咱们想现实生活中什么叫权限,大家想一下,比如说咱们现在啊,这么来看,我打开百度。在百度里边搜索这个权限。咱们先看一下啊,这个权限怎么理解?打开百度百科,然后咱们看啊,这里写的什么叫权限,权限是指为了保证职责的有效履行,认知者必须具备的对某事项进行的决策的范围和程度。这个叫权限什么意思呢?咱们说的通俗点啊,注意啊,我们现在先抛开软件领域,咱们从我们表面上理解,或者说我们日常生活中理解,说一下什么叫权限。
02:16
比如大家想一下,一个公司里边是不是有很多的角色,比如说公司里边有总经理,有这个财务总监,有这个研发总监等等很多的角色,那大家想一下啊,比如现在你是公司的总经理,那你能做什么事情?公司的所有事情你是不是都能决策,因为你是公司的最高领导,比如说你是公司的财务总监,那你想一下你能做什么,是不是能管理财务这个范围中的事情,比如说研发的事情,你是不是管不了?比如说你是公司的研发总监,你能管什么?你能管财务吗?是管不了,只能管你研发这个范围中,这个事情当然只是在你的范围中,你的职权范围中来做这个事情,这个就叫权限,所以这个各位应该好理解,你就可以闭着眼睛想一下啊,以后你是公司总经理,你这公司你该怎么管理,你以后是财务总监,这个钱你该怎么做,这就叫权限。
03:14
这么说各位应该更好理解,那这个之后咱们回到咱们的主题中来,在我们的系统中,或者说我们的软件开发中,这个权限怎么管理,咱们看一下啊,在我们的系统中进行权限管理,大体上可以分成有三种,第一种叫页面权限,第二个叫操作权限,第三个叫数据权限,我们系统中重点讲前两个页面权限和操作权限。那我把这个给大家画到图里边,咱们详细来解释一下啊,到底这个该怎么去理解?回到我们主题,大家看啊,第一个叫页面权限,页面权限呢,也可以理解为是一个菜单级别的权限,第二个操作权限,它指的是按钮级别的操作权限,那咱们现在第一个啊,什么叫页面权限,也就是菜单级别权限。
04:12
大家看我课件里边啊,这张图里边,我这里写到菜单权限,就是咱说的页面的这个权限,是一个粗力度的权限。我把这句话拿过来啊,然后咱马上举例子说明,各位不用着急啊,因为有些东西呢,不是一句话就能说清楚,咱们需要一点点来说明,各位也需要一步一步跟着我这个思路慢慢去理解,那咱们看一下啊,什么叫页面权限,什么叫粗力度权限,咱们看重点啊。比如说我现在我这个项目中。我当前用户,比如咱先退出去啊,大家看我当前用户是不是叫dindin呢?它是这个系统管理员,那系统管理员登录系统之后,是不是应该能看到所有的菜单,这是第一个,那比如说我现在啊,我这里边换一个用户啊,当然他没有加,咱就说这意思,比如现在有个用户叫Lucy,当Lucy登录这个系统之后,他可能只能看到这个系统管理这个菜单,而别的菜单他都看不到,这个叫什么,就是我们刚才说这个页面权限。
05:19
我这里写一下啊。就是每个。或者说不同角色的用户进入系统之后,他可以看到不同的菜单,这个就叫页面权限,写的具体点啊,就是比如第一个我们这个,比如说这个张三。是一个系统管理员,那他登录系统之后,应该可以看到,看到什么,是不是所有的菜单,因为他是管理员嘛,那比如第二个,所以现在一个人啊,他叫这个赵六。比如说赵六呢,他是这个销售人员。
06:02
那他登录系统之后可以看到,那就是销售相关的菜单,别的菜单他应该是看不到,这个就叫页面权限,也是一个菜单级别权限,说到通俗点,不同角色用户登录系统之后应该能看到不同菜单,比如说张三登录啊能看到所有,李四登录可能只能看到用户,然后照六登录可能只能看到角色等等,这就是咱们说的第一部分,各位把这个清楚啊,然后这个具体怎么实现,咱们一会儿会具体进行分析,大家现在先理解什么叫页面权限。这个各位应该更好理解啊,我这么说,或者各位可以自己闭上眼睛想想到底是怎么样一个过程,张三管理员看到所有照六,销售人员只能看到销售,别的他肯定看不到。这是第一个的说明啊,就是这里写到的,然后这种权限呢,我们也发现啊,因为它是一种粗力度,就是只针对这个菜单进行操作,别的根本就操作不了,什么意思呢?比如大家想一下啊,我在这个用户管理中,这是一个菜单,用户管理中是不是有很多功能,比如说里边你看啊有添加。
07:15
有修改,有删除,有分配,包括有搜索等等,是各种功能,这个叫更细力度,但是这个页面权限只是一个粗力度的一个控制,这是咱说的第一部分。然后这个之后我们再看第二部分啊,叫按钮权限,或者说也可以叫操作权限。那这是什么意思呢?这里写到它是一种叫细力度的权限控制。我写到这位置啊,细力度权限控制,什么叫细力度,就是我刚才提到的,我这里写的具体点啊。就是比如说我们现在这个模块是这个用户管理,那用户管理部分是个菜单,而在这个用户管理里边有它的具体的功能,就咱说那个按钮啊,咱就叫功能,就是我们说那按钮部分的按钮里边有什么大家都清楚,比如里边有这个添加。
08:13
有修改,包括有删除等内容,而咱们现在可以做这个具体操作进行控制,比如说我这个张三用户啊,他可以做添加,但是不能做修改删除,我这个照六可以做添加修改,而不能做删除,这个就叫操作权限,也就是按钮级别权限,我们称为叫细力度的操作权限。包括大家看我这张图里边,就刚才我画到的,比如你登录之后,你能做添加,能做修改,能做删除,但是不能做分配,而另一个人登录之后,他可能什么都可以做,而换一个人进入,可能他只能做这个添加,这个就是。按钮权限,所以以上就是咱们针对这个权限的一个说明,我们项目中主要做这两个,一个页面权限,一个叫操作权限,一个是菜单级别,一个是按钮级别。
09:07
这个给大家做个说明啊,这里边我再重复一遍啊,因为咱们核心点是在这里,比如说咱们做一个事情,或者说做一个系统,或者说做一个功能,咱要明确我们的最终目的,最终目的咱就做这个事情,我再重复一遍啊。我们这个权限在系统中大体分成三种,咱们重点研究前两个,一个页面,一个操作。页面指的是菜单,也就是不同角色用户登录之后能看到不同的菜单,比如说张三是管理员,看到所有,李四是销售,只看到销售相关的。第二个叫按钮权限,或者说叫操作权限,指的是按钮级别的,比如咱们现在在角色管理中有添加尽快删除,我张三登录能做添加尽快删除,而李四他进入之后只能做添加,这是一种细力度的控制,叫按钮权限。
10:05
以上是咱对于他的一个基本说明啊,大家把刚才我说这个自己好好去理解,理解是咱们做的最终的目的。然后这个之后我们继续来看啊,就是现在呢,我们要实现这个功能,咱们该怎么去做,我把这个实现的思路给各位,下面来做一个详细的分析,然后咱们一步一步一个接口一个接口进行具体实现。
我来说两句