摘要: 设置资源所需权限 限制访问资源所需权限SpringSecurity为我们提供了基于注解的权限控制方案,这也是我们项目中主要采用的的方式。我们可以使用注解去指定对方的资源 所需的权限 但是要使用它我们需要先开启相关配置 @EnableGlobalMethodSecurity(prePostEnable 阅读全文
posted @ 2023-04-25 20:16 zj勇敢飞,xx永相随 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 权限系统的作用 ​ 例如一个学校图书馆的管理系统,如果是普通学生登录就能看到借书还书相关的功能,不可能让他看到并且去使用添加书籍信息,删除书籍信息等功能。但是如果是一个图书馆管理员的账号登录了,应该就能看到并使用添加书籍信息,删除书籍信息等功能。 ​ 总结起来就是不同的用户可以使用不同的功能。这就是 阅读全文
posted @ 2023-04-25 16:52 zj勇敢飞,xx永相随 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 退出登录 我们只需要定义一个登陆接口,然后获取SecurityContextHolder中的认证信息,删除redis中对应的数据即可。 在LoginServiceImpl @Override public ResponseResult logout() { Authentication authen 阅读全文
posted @ 2023-04-25 16:18 zj勇敢飞,xx永相随 阅读(92) 评论(0) 推荐(0) 编辑
摘要: token认证过滤器代码实现 认证过滤器 ​ 我们需要自定义一个过滤器,这个过滤器会去获取请求头中的token,对token进行解析取出其中的userid。 ​ 使用userid去redis中获取对应的LoginUser对象。 ​ 然后封装Authentication对象存入SecurityCont 阅读全文
posted @ 2023-04-25 14:43 zj勇敢飞,xx永相随 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 登录接口实现细节分析 登陆接口 接下我们需要自定义登陆接口,然后让SpringSecurity对这个接口放行,让用户访问这个接口的时候不用登录也能访问。 ​在接口中我们通过AuthenticationManager的authenticate方法来进行用户认证,所以需要在SecurityConfig中 阅读全文
posted @ 2023-04-25 10:48 zj勇敢飞,xx永相随 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 用户密码加密存储 密码加密存储 实际项目我们不会把密码明文存储在数据库中。 默认使用PasswordEncoder要求数据库中的密码格式为{id}passwrod。它会根据id去判断密码为加密方式。但是我们一般不会采用这种方式。所以就需要替换PasswordEncoder。 我们一般使用Spring 阅读全文
posted @ 2023-04-25 09:35 zj勇敢飞,xx永相随 阅读(49) 评论(0) 推荐(0) 编辑