实现用户登录方式

实现用户登录方式

其实实现用户登录的方式由很多种,但是其实不管哪种登录方式,目的都是安全!下面就简单的介绍下几种方式

1、直接通过表单的形式,post请求过去,过程如下所示
这里写图片描述

2、一样通过表单的形式提交,但是密码用MD5进行加密,然后进行传输,这样会更加的安全
这里写图片描述

3、还是表单形式提交,不过在对密码MD5加密前先去拼接一个字符串,然后再进行MD5加密
这里写图片描述

4、第三方登录-oAuth授权

oAuth(Open Authorization)授权为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是oAuth的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,所以oAuth是安全的。

这里写图片描述

比如说用户要请求登录

(1) 用户打开第三方客户端的时候,第三方客户端要请求用户的授权。
(2)用户同意给予第三方客户端授权。
(3)第三方客户端使用上一步获得的授权,向QQ服务器申请访问令牌。
(4)QQ服务器对第三方Web进行认证以后,确认无误之后,会下发访问令牌。
(5)第三方客户端使用访问令牌,向QQ资源服务器申请获取资源。
(6)QQ资源服务器确认令牌无误之后,会向第三方客户端去发放资源。

4、扫码方式登录,下面介绍的是在微信手机客户端扫码登录网页版微信的例子

比如说扫描一个二维码,这个二维码其实就是一段文本的编码,我们在微信扫描这个二维码就会去跳转到相应的界面,我用新浪微博扫描这个二维码得到的是

https://login.weixin.qq.com/l/IYJzJSzuhQ==

这里写图片描述

大致过程其实就是

  • 用户去访问微信网页版,微信服务器为这个会话(session)生成一个全局唯一的 ID,上面的 URL 中 IYJzJSzuhQ==就是这个 ID,这个时候其实系统是不知道访问者是谁的,所以就需要我们通过微信进行扫一扫

  • 当用户打开自己的手机微信后去扫描了这个二维码,就会提示用户是否确认登录

  • 当用户点击确认登录后,手机上的微信客户端就会将微信账号和这个扫描得到的URL中的ID会一起提交到服务器

  • 服务器就会将这个ID和用户的微信号绑定在一起,并会通知网页版的微信,这个ID对应的微信号为这个用户,网页版微信就会去加载这个用户的微信信息

5、目前CSDN采用了微信授权登录

目前CSDN可以采用授权微信授权登录,我记得是先进行了微信账号和CSDN的账号的绑定,在设置里面就可以看到,CSDN是利用微信开放平台的微信登录接入的,我们扫描CSDN的登录二维码

这里写图片描述

我用QQ进行扫描得到的链接https://open.weixin.qq.com/connect/confirm?uuid=021ZYeQpLMCREl5P

也就是说其实是先去访问微信的服务器去发送请求的,然后才会把请求发送给CSDN的服务器,大致步骤如下所示

这里写图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值