初识Spring Security(权限)

在我的上一个帖子中写了安全认证,这篇文章写一下Security中的权限是如何使用的。代码走起!

1.创建一个实体类UserEntity并且实现UserDetails接口,这个接口包含了一些必要的用户信息字段,而我们创建的实体类要去实现它并且进行扩展。

初识Spring Security(权限)_第1张图片初识Spring Security(权限)_第2张图片

2.创建一个权限类Permission,表示用户通过认证后会获得哪些权限。

初识Spring Security(权限)_第3张图片

3.创建UserDetailsService,可以理解为只负责从特定的地方(通常是数据库)加载用户信息。

这里new了一个userEntity,并且调用set方法赋值,这里的密码应该设为加密后的密码;new了俩个权限,分别给上值代表俩个不同的权限并且创建一个新的集合将权限放进去;最后把此权限集合交给new的用户,表示此用户登录后将会有集合中的方法权限。

初识Spring Security(权限)_第4张图片

 

4.编写配置类

@EnableGlobalMethodSecurity 这个注解必须要有并且是开启状态,用来判断用户对某个方法是否又访问权限。
PasswordEncoder方法是对密码做加密行为 

 5.完善controller

@PreAuthorize 给此方法设置权限,只有用户持有相同权限名才可以访问该方法 初识Spring Security(权限)_第5张图片

 6.准备就绪,开始测试我们的权限

使用我们new的user登录,

初识Spring Security(权限)_第6张图片

结果为:获取到了userEntity和perssion

 

 搞定!

你可能感兴趣的:(java,spring,boot)