Spring Security

基本原理

Spring Security 基本原理(如下图):


Spring Security

认证模块(绿色):

  • 账户密码
  • /login.html
  • 三方:短信、QQ、微信等

权限过滤模块(橙色):

  • 不同的用户拥有访问不同URL的权限

异常模块(蓝色):

  • 对于访问异常进行不同的处理:其中包括未登陆、登陆错误、token失效等.

自定义用户认证逻辑

  • 处理用户信息获取
    实现UserDetailsService接口

  • 用户校验逻辑
    UserDetails判断用户是否过期、是否被删除、是否被锁定、密码是否过期

  • 密码的加密和解密
    利用PasswordEncoder接口

个性化用户认证流程

  • 自定义登陆页面
http
  .formLogin()
  .loginPage("")
  .loginProcessingUrl("")

同时需要将两个URL加入非验证中

针对APP和Web不同的登陆做不同的处理:


处理不同类型的请求

注意:系统的配置也需要模块化封装

  • 自定义登陆成功处理
    继承AuthentictionSccessHandler

  • 自定义登陆失败处理
    继承AuthentictionFailureHandler

注意:成功和失败也要考虑返回Json 或 Html

1、认证处理流程源码说明
2、认证结果如何在多个请求间共享
3、获取认证用户的信息

图片验证码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容