Spring Security 认证授权
1. 基本概念
1.1 什么是认证
认证(what): 认证就是判断一个用户身份是否合法的过程。当用户某项资源时,需要验证他的身份信息,身份合法能够访问资源,身份不合法不允许访问资源。
为什么需要认证(Why): 认证的必要性存在于两个方面,其一:保护用户的数据、隐私安全;其二:保护服务器减少被攻击的概率。
认证的方式(Who): 账号密码认证,指纹认证,手机短信认证,人脸认证。
1.2 什么是会话
会话: 当用户进行认证后,为了避免每次执行基本操作都进行认证的繁琐情况,可将认证信息保存在会话中。会话是系统为了保存当前用户的登录状态所提供的方式,常见的有基于Session方式、基于Token方式。
基于Session的方式: 当用户认证通过后,服务器记录用户信息保存在 Session 中,发给客户端的 Session id 被保存在客户端的 Cookie 中,这样客户端访问时带上 Cookie 中的 Session id 就可以验证服务端是否存在该 Session 。
基于Token的方式: 用户认证成功后,服务端根据算法生成 Token 令牌,客户端可以将令牌保存在 Cookie 或 localStorage 等存储中,每次请求带上 token, 服务端收到后验证 Token 令牌的合法性。
1.3 什么是授权
授权: 授权是在认证之后的发生的,校验是否有权限使用某项功能、访问某项资源。
为什么需要授权: 为了更细粒度的对隐私数据进行划分,控制不用的用户能够访问不同的资源。
2.Spring Security 认证流程

本文介绍了SpringSecurity中的认证与授权概念,包括认证的重要性、不同认证方式及会话管理方法,并探讨了基于Session与Token的会话保持技术。此外,还讨论了授权的目的及其在保护隐私数据中的作用。
1504

被折叠的 条评论
为什么被折叠?



