00:01
各位同学大家好。前面呢,我们已经实现了菜单按钮的权限控制,包括最终测试也成功了,但是我们虽然说成功了,这里边有一个问题咱没有处理到,就是服务端我们还没有做任何控制,什么意思呢?给大家解释一下啊,比如我们现在通过页面访问。那我的用户确实能做到全控制,但是比如说现在啊,我直接去访问某一个CTRL了,那这个是没有控制,比如现在你只要知道你的路径,那咱们是不是就能访问,所以我们下面要在咱们的后端或者说服务端做一个权限控制,也就说判断你是登录才能访问,你只有权限才能操作,而不是目前的样子,没有做任何控制。这个是咱一个说明啊,如果各位不理解,我再解释一遍啊。咱们目前通过页面登录用某个用户,他确实能进行权限的相关的控制,但是我现在比如说我直接去访问某一个路径,比如现在我给各位访问一下某个路径。
01:07
咱们用local house的8800访问,然后传入当前页,每页记录数,大家看这个过程,8800写错了啊。回车。我们看里边。大家看现在这个数据是不是能访问到,比如说咱们CTRL里边没有做任何控制,正常来讲应该怎么样,第一个我是登录能访问,第二个我用户有这个权限才能访问,如果说你不是登录也没有权限,那肯定是不能访问,所以咱下面要在咱的服务端做一个登录和权限的控制,那怎么控制呢?给各位说明,首先用最原生方式,咱可以在进入CTRL之前是不是进行判断,判断用户是否登录,或者用户是否有这个操作权限,那这个是我们原生方式。
02:00
而这种方式呢,就算能实现,但是咱们每次都要在CTRL进入之前做判断,所以咱们可以给它做一个优化,用什么用过滤器和a up实现,过滤器能实现拦截你的请求,A up在不改变源码情况下来增强你的功能,这是我们的原生实现。而这个实现呢,其实我们不需要这么复杂,在实际中有很多开源的框架能实现这个全控制,而开源框架有哪些,给各位做个说明,目前有两个比较主流的权限框架。第一个框架叫three security,第二个框架叫schedule,我们项目中基于three security来实现用户认证,用户授权,那下面呢,咱们把这个spring security框架给各位先做一个介绍,那我们来看一下啊,这里写到,首先各位都清楚啊,Spring框架是一个很强大的框架,而spring security正是里边的成员之一,它是一个基于spring框架提供了一套完整的web的安全性的解决方案,而security有两大核心功能,就是咱要用到的第一个功能,大家看。
03:16
叫什么?就是认证,第二个什么就咱说的授权,那给大家解释一下啊,什么是认证,什么是授权?首先我们看认证,认证什么意思呢?说到通俗点就是判断我当前用户是否登录,比如说你登录之后才能访问,如果你没有登录,肯定不能访问,这就叫认证。第二个叫授权,什么叫授权?我登录之后,比如我的用户对角色模块有操作权限,那才能访问。如果说。对决策模块没有操作权限,那咱肯定不能访问,这个叫授权,也就是说判断用户是否是有权限去做某些事情,这是他的两个核心,认证判断登录授权,判断能不能具体操作,所以这个各位要清楚。
04:06
而咱们项目中就是基于这两个来实现一个认证,一个叫授权,这是关于它的一个简单介绍。然后我们继续来看啊,下面有段历史,这个历史呢,我就不带着各位来读一遍了,各位感兴趣可以自己来读一遍,就是它是在零三年开始出现的,在零七年正式更名为叫spring security,这各位给他了解一下啊,有兴趣你可以把这段话读一遍,是他一个发展历史,就是每一年做了什么事情。然后咱们继续往下看啊,刚才我提到了有两个主流的选项框架。第一个叫spring security。然后第二个叫she啊,给大家分别做个介绍,Spring security是中的一个模块,然后它它有很多相关的特点跟无缝整合,然后它能提供更强大的权限控制,专为外部设计,另外啊,它里边使用也会特别方便啊,另外它是轻量级的框架,这叫security。
05:09
然后第二个呢,我们说这个shero给大家做个说明,这个she肉呢,是阿帕奇旗下的一个轻量级的确权框架,它也能做到认证和授权,它有一个缺陷,在web一些特定需求中,就要咱们手动在写很多配置,所以各位可以这么理解啊,任的功能比筛更加的强大,但是在有一段时间之前,就是BOO出现之前,这个security用的并不多,因为它写法或者说它的配置会特别麻烦,特别不方便,所以当时用的并不多,Shadow用的更多,但是呢,在sir BOO出现之后,这security被慢慢。大量得用起来,因为它会特别方便,它叫省略里边各种犯斗配置,这大家有个了解,就这里边有一个简单组合啊,但是只是单纯技术上组合,实际中无论怎么组合都是可以用的,咱们项目中基于这个security来实现我们的。
06:10
功能的认证,还有授权的操作。以上是一个基本介绍。
我来说两句