在做谷粒学院项目的时候,到了权限管理这块,老师讲得很潦草,很难理解,又通过自己的学习大致明白了spring secutity的理解,下面便是我们在谷粒学院项目的基础上对spring security的理解。
1.首先我们要明白的是spring security 内部有一个类UserDetails,我们可以把它理解为一个entity,但是因为我们所做项目不同,那么我们每个项目的用户 与 权限的 定义也会有所不同,所以我们要实现它并加入我们自己的user 与权限(菜单),(这样我们的spring security 与我们的用户就有个联系),
2.编写登录接口过滤器,继承UsernamePasswordAuthenticationFilter过滤器,此过滤器是springsecurity内的过滤器,他会对我们的用户名与密码进行校验
下面我们就来看一看我们自己写的继承UserDetailsService的
3.编写访问过滤器,继承BasicAuthenticationFilter(访问过滤器就是当我们访问其他模块时检测我们当前用户是否有权限访问此模块)
4编写完过滤器后了,我们就让他们起作用,将过滤器加入加入我们的security中,即编写我们对应的TokenWebSecurityConfig,继承我们的WebSecurityConfigurerAdapter