纸上得来终觉浅,觉知此事要躬行。
楔子
本文适合: 对Spring Security有一点了解或者跑过简单demo但是对整体运行流程不明白的同学,对SpringSecurity有兴趣的也可以当作你们的入门教程,示例代码中也有很多注释。
本文代码: 码云地址 GitHub地址
大家在做系统的时候,一般做的第一个模块就是认证与授权模块,因为这是一个系统的入口,也是一个系统最重要最基础的一环,在认证与授权服务设计搭建好了之后,剩下的模块才得以安全访问。
市面上一般做认证授权的框架就是shiro
和Spring Security
,也有大部分公司选择自己研制。出于之前看过很多Spring Security
的入门教程,但都觉得讲的不是太好,所以我这两天在自己鼓捣Spring Security
的时候萌生了分享一下的想法,希望可以帮助到有兴趣的人。
Spring Security
框架我们主要用它就是解决一个认证授权功能,所以我的文章主要会分为两部分:
- 第一部分认证(本篇)
- 第二部分授权(放在下一篇)
我会为大家用一个Spring Security + JWT + 缓存的一个demo来展现我要讲的东西,毕竟脑子的东西要体现在具体事物上才可以更直观的让大家去了解去认识。
学习一件新事物的时候,我推荐使用自顶向下的学习方法,这样可以更好的认识新事物,而不是盲人摸象。
注:只涉及到用户认证授权不涉及oauth2之类的第三方授权。