授权与认证
说到授权认证,可能会第一时间想到登录,那么登录不就是账号密码输入,然后加密到数据库里匹配是否正确吗?有什么难的,其实登录很重要:
- 登录认证模式多样
- QQ登录
- 短信登录
- 微信登录
- 支持的前端渠道多样
- 网页端
- APP端
- 支持集群环境,跨应用工作,Session控制,控制用户权限,说防护与身份认证相关的攻击
认证和授权如此复杂,因此也诞生了作者对SpringSecurity
系列的学习。本系列将主要从SpringSecurity
,Spring Social
,Spring Security OAuth
来给大家进行讲解。
SpringSecurity
:Spring Social
和Spring Security OAuth
的底层实现是它,我们主要研究它实现用户名+密码认证和手机号+短信认证的,和底层代码实现。Spring Social
主要用于第三方认证,比如QQ,微信的接入。Spring Security OAuth
来创建、分发、管理Token信息,因为APP和后端服务器通讯的时候无法存储Session的问题,所以我们采用Token的方式来存储登录用户的认证信息,就需要用到OAuth
如上图,也可以清除看出来三个安全组件的职责