1、基本概念:
1.1什么是认证?
用微信举例子:在初次使用微信的时候,需要先注册成为微信用户,然后输入用户名和密码即可登录微信,输入账号密码登陆微信的过程就是认证。
系统为什么要认证?
认证是为了保护系统的隐私数据与资源,用户的身份合法方可访问该系统的资源。
认证:
用户认证就是判断一个用户的身份是否合法的过程,用户去访问该系统的资源时,系统要求验证用户的身份信息。身份合法方可继续访问,不合法则拒绝访问。常见的用户身份认证方式有:用户名密码登录,二维码登录,手机短信登录,指纹认证等方式。
1.2什么是会话?
用户认证通过后,为了避免用户的每次操作都进行认证可将用户的信息保存在绘画当中。会话就是系统为了持当前用户的登陆状态所提供的机制,常见的有基于session方式、基于token方式等。
基于session方式的认证如下图:
它的交互流程是:用户首次认证成功后,在服务端生成用户相关的数据并保存在session(当前会话)中,发给客户端的session_id存放在cookie中,这样用户端请求时,带上session_id就可以验证服务器端是否存在session数据,以此完成用户的合法校验,当用户退出系统或session过期销毁时,客户端的session_id也就无效了。