00:00
各位同学大家好,刚才呢,我们通过spring security完成了用户认证以及用户授权,那下面呢,我们进行最终的测试,在测试过程中呢,因为要用到,所以我现在啊,把服务我们先行启动,然后再进行测试,这个呢,这里边我强调啊,我这里边为了测试方便,我就用一个Windows版本了,各位可以装那个linu版本,至于说red怎么去使用,我们上回谷发布过新闻视频,各位可以进行关注,我这里就不再重点讲解了,因为咱们重点不是讲red,我们这里边做一个存储权限的使用,我现在用的是一个Windows版,你用linu版本完全是一样的。我现在把它进行启动啊,这个已经起来了,Local house用的是6379端口号,然后启动之后,下面我们进行测试,首先啊,我把这服务先启动起来。等它启动啊,然后前端已经完成启动,咱们访问进行测试,我们重新分配新的角色权限,最终进行测试。
01:10
咱们看效果啊,然后大家看到后端成功启动了,来到我们这个界面中,咱们登录。用din管理员先登录进去,现在已经进入了啊,然后进入之后我们找到啊,咱这里边有很多的用户,比如我现在啊,就找这个,呃,咱还是找这个李四了啊,你找别的可以,我还是找这个李四。李四用户,李四用户呢,分配的角色是角色管理员,我们找到角色管理模块中,角色管理员有很多的权限,比如说我现在这么来做啊,就来操作这个角色管理模块,在角色管理模块中,比如现在让他能做。查看。能做添加修改,包括分配权限,让他呢,不能做删除这个功能,就是他没有对删除的操作权限。
02:02
大家看到啊,这个角色管理这里边没有删除,现在我把它保存,咱们完成了相关的分配,然后分配之后怎么做,我在里边呢,把它退出去,用李四定登录,咱们看结果啊,李四登录。大家看啊,李四有决策管理,然后里边有它这些功能,刚才咱们给他没有加的权限,各位应该记得是不是删除,比如说现在啊,我把里面这个管理员给他要删掉,你看啊,我点删除弹个框点确定。各位看到是不是抛出一个异常啊,说执行了全局异常处理,那大家看一下啊,在我的控制台里边应该是有这么一个输出啊,大家看这个控制台中的内容啊,我们找到控制台里边应该在下边啊。咱们找一下,你看控制台里边抛出了一个异常,大家看什么异常啊,往后来看。
03:01
这里写到这个异常。这个说你现在不允许访问,就是你没有这个操作的权限,所以现在啊,证明咱这个。用户授权就生效了,另外我们刚才写的时候呢,有个细节问题,不知各位是否记得啊,刚才咱们做那个封装的时候,我们找到啊,在我们这里边有一个地方。就是咱们的这个位置,我说是从map中根据这个名字取到这个,这名字是里边封装好的,然后大家看我输出的一个地方啊,就这句话的输出,你看list机构中的map里边它的名字是不是叫这al这个名字,所以根据它来取到里面这个值,这位置就是这里一个解释,这各位应该都能看到啊,所以以上验证出来,我们的用户认证以及用户授权就成功了,咱们通过security完成了最终实现。然后过程中强调啊,我这里边只做了测试,所以我只写到了角色管理中,你在别的模块中都需要加上这个,另外你在前端页面的按钮位置也需要加上那个控制啊,但是以它为例完成了这种测试。
04:13
然后测试之后呢,大家发现啊,这里边有一个小问题,刚才我这里边没有权限访问它是不是抛出了一个异常了,所以咱们可以把这异常做个处理,就是咱说的那个全局异常处理啊,这个我们可以最终做个实现,所以咱们最后啊,把这异常给他快速解决一下,那怎么解决很简单啊,咱们就找到啊,之前我们有一个异常处理类。找到之前写过啊,不知道各位同学是否记得。我们找到里面一个叫ion,里边有一个ion,然后在里边把那个异常处理就可以了,跟这个结构基本一致啊,我就从里边拿过来,因为跟之前写的都是一样的啊。就是我们的这个结构。把这个拿过来。
05:02
咱们放到啊,我们的这个位置。大家看到啊,这个是我们当前出现的这个异常,是不是这个这个异常,然后在里边我们这个位置啊,给他做个提示,说这个异常。怎么样啊,比如咱们给它加上一个就是呃,中文的一个提示吧,为了咱们测试更加方便啊,还是按照这个结构我们来写一下。写到这里啊。点file,点上code,咱们写一个这个二零啊,然后点上一个给他做个提示,说没有访问的权限,或者说没有操作的权限,现在这可完成了,然后完成之后呢,一个小问题啊,这个异常呢,是在那个权限依赖中有,所以咱们把那个权限的依赖给它引入进来,要不然它里边没有这个相关的依赖。在里边把依我们给引入进来就可以了啊,就这部分咱们之前应该是。
06:05
有这个部分啊,都已经引过了啊,所以现在咱们就完成了里边这个过程,做了一个全局异常处理,那这个处理之后,下面呢,我把这服务重新启动下啊,我们最终再做个测试,看一下最终结果,刚才是直接输入那个执行了全局异常处理,目前咱把这个异常给他加上了。我们最终啊,再来试一下。等他啊,启动起来。然后咱们来到这里边啊,我先给他退出去啊。侧的刷新一下啊,先给他退出去。退出之后我们用李四登录,现在登进去了,登录之后呢,来到咱们这个角色管理中,现在我进行删除,看它的提示。这里边啊,应该会出现我们行为那个操作。
07:00
大家发现啊,我刚才删的时候这提示是不是没有啊,他还提示什么执行了全异常处理,大家看一下啊,是不是哪里写错了啊。还是回到这个,我们发现啊,刚才咱们说引入那个依赖,这依赖好像刚才没有引入,你注意一个问题啊,这位置的异常不是我们spring的,所以咱们依赖需要引入啊,刚才我看了一下。咱看一下啊,应该是没有进行引入啊,就是那个水科的依赖,所以咱给它引入一下,也就是这个部分。啊,我这里在说啊,结果却没有给它复制进来啊,想给它引入进来。然后引入之后把这个给他。包导入正确啊,咱们导的是这个包里边的相关的部分,比如说我们那个里边内容啊,给它再重新刷新一下啊,我们再导一下。等他创新出来。然后这个给它先去掉,不是IO里边的,应该是我们那个spring security里那个依赖,也就是这个啊,注意啊,这个不要错啊,然后这个之后我们最终在测试,现在应该就正确了啊,我再说一遍,刚才这个小问题啊,我们现在这个异常应该引入我们security那个依赖,也就是这个依赖。
08:16
如果没有引入它这个异常的依赖包导的不对,咱们导的默认是那个NIO里边的,而不是我们C里边这个依赖,把它导入正确之后再测试应该就可以了,那咱们现在啊再来试一下。我把这个同样啊,先推出去。呃,刷新一下啊,退出去,然后在里边点李四登录。登录之后点击删除,咱们最终再试一下,这是不是就正确了,提示我们没有操作权限,因为咱没有对它操作这个权限的设置以上啊,就是咱们完成的权限管理部分,所以说到这里呢,在我们项目中就完成整合,要求各位掌握啊,就是主要这几部分,第一部分你掌握咱们说里面这个基本这个流程咱们之前一直分析的,然后用它能实现用户认证以及用户授权。
我来说两句