文末有本篇文章的项目源码可供下载学习
Spring Security 的权限认证是在登录之后进行操作的,我们首先需要再登录的过程中获取用户对应的权限信息。
我们将权限信息放入token中 下次通过URL访问后台资源时,根据token中的权限信息来判断用户是否有权限操作该后台资源。
0.配置思路
- 在本项目案例的基础上进行相关的配置。
- 在数据库中建立权限表/角色表/角色-权限表,并在用户表中加入role_id属性,与角色表进行关联
- 生成相应的pojo层/mapper层文件
- 修改UserDetailsServiceImpl.java中的loadUserByUsername方法,获取登录用户所对应的权限信息,并将权限信息放入到UserDetailsImpl中.
- 在需要权限验证的Controller方法中,利用@PreAuthorize注解,标注好对应的权限信息.
- 在SecurityConfig.java文件中开启注解支持.@EnableGlobalMethodSecurity(prePostEnabled = true)
- 进行相关测试.