diff --git a/v.md b/v.md index b4daca0..a50b06b 100644 --- a/v.md +++ b/v.md @@ -549,3 +549,16 @@ public ResponseResult login(User user){ ``` 假如将映射实体的,是映射到Mapper中的话。那么所进行的查询操作将要注入mapper来实现。并且还是要重写其中的方法,或者在mapper中添加自定义查询操作。 + +3. 表单登录 + +接下来我们输入用户名、密码,跟踪一下认证流程: +在这里插入图片描述 +流程说明: + +输入用户名、密码提交登录,登录请求会被UsernamePasswordAuthenticationFilter处理,构建预认证对象UsernamePasswordAuthenticationToken +调用AuthenticationManager(实现类是ProviderManager)进行认证 +ProviderManager查询所有认证提供者,DaoAuthenticationProvider符合当前认证类型 +DaoAuthenticationProvider查询用户,校验密码 +身份验证成功,存储会话、发布事件、调用成功处理器 +身份验证失败,清除SecurityContext,调用失败处理器