SpringSecurity框架流程

SpringSeciurty是一个基于Spring框架的安全性认证和访问控制框架,主要用于保护Web应用程序

主要作用:帮助我们进行登录的认证,和项目中涉及到权限时进行管理操作

框架流程:

1.在工程中的pom.xml里面添加依赖

2.创建一个SecurityConfig.java配置类,在里面重写configure方法

3.在方法中配置白名单

4.创建UserDetailServiceIml实现类,在里面配置正确的用户密码

 

5.将默认的密码编码器设置为无加密

 

6.配置自己的登录界面

 

7.使用自己的登录界面时,security框架的登录认证流程不会自动启动,需要我们在UserController处理login请求时手动开启,手动开启时需要用到认证管理器,在Security配置类中进行配置

8.关闭跨域攻击防御

 

9.在UserDetailServiceImpl里面添加从数据库中查询数据的代码 

10. 当登录失败时security框架排除了两种异常,需要在全局异常处理类中添加处理方法

Security框架认证流程

1.在SecurityConfig配置类中配置好白名单,设置登录界面,关闭跨域攻击防御策略

2.当客户端请求的路径不在白名单里面,Security框架会自动将请求重定向到登录界面

3.在login.html登录界面中向/login地址发出登录请求时,服务器中UserController里面的login方法处理该请求

4.在login方法中通过认证管理器manager启动认证,将认证结果保存到Security上下问问呢对象中

5.当manager启动认证流程后会自动调用UserDetailServiceImpl里面的loadUserByUsername方法,在方法内部调用UserMapper里面的查询方法,通过用户名查询到UserVO,如果查询不到return null,此时Security框架会排除异常代表用户名不存在,需要在全局异常处理中进行处理,如果查询到的密码和用户名输入的密码一致,则不会排除任何异常,UserController中的login方法会执行完,给客户端响应登录成功的信息,如果登录的密码错误,Security框架会抛出代表密码错误的异常,此时也需要再全局异常处理中进行处理.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值