现在很多网站和app常见的几种登录方式有:
传统的账号+密码登录定位器号+动态验证码登录QQ/微信/微博等第三方授权登录
今日头条网络登录界面
抛开传统的账号+密码的方法,我在上一篇文章中也提到了定位器号+动态验证码的方法。今天,我们将重点介绍使用QQ/微信/微博等的第三方授权登录。
什么是第三方授权登录?
简单来说,一个软件借用其他软件(第三方)的账号体系,建立自己的账号体系,实现快速登录。即可以省去用户在不同平台维护各自账号和密码的麻烦,帮助软件快速建立自己的账号体系,更好的提高第三方软件的普及度。可以说是双赢的解决方案,但是现在很多软件居然都似是而非的打起了第三方授权登录!
如何访问第三方授权登录?
我们如何实现QQ/微信/微博等的第三方授权登录?为了更好的分析这个问题,我们从软件开发的角度来看一下:
并不是所有平台都支持让其他软件使用自己的账号。
首先,它的知名度要足够高。像QQ/微信/微博这样拥有庞大用户群的国内平台,以及像谷歌/脸书/Github这样的国外平台。
其次,也是最重要的,这些平台愿意开放共享,你才能访问它们。
最后,是技术支持。最常见的是基于OAuth协议(现在基本基于OAuth2.0协议)搭建自己的开放平台。
注意,开放平台和原生平台是两回事。一般原生平台不会开放所有内容。不然他怎么自己玩?比如微信的开放平台,可能只是简单的让你获取用户的一些基本信息,比如好友列表、钱包等,这些你不会获取,取决于用户的授权内容。
现在,大多数开放平台都是基于OAuth2.0协议构建的。当一个软件通过这些开放平台获取用户信息时,需要得到用户的确认和授权。只有在用户同意授权后,软件才会通过获取的AccessToken获取开放平台上最终用户的信息!
这里有两个重要的方面:
一个是AccessToken)s2/]。当用户授权软件使用QQ/微信/微博的账号信息时,软件不会获取用户的账号密码,对用户来说是安全的。软件只是把这个AccessToken)s2/]拿到QQ/微信/微博的开放平台去获取内容。
二是用户的授权,也就是用户允许软件访问的内容。拿一般的登录来说,当软件通过QQ/微信/微博登录时,首先会跳转到QQ/微信/微博这些软件的登录界面,当你输入正确的账号和密码登录QQ/微信/微博后,会弹出一个授权信息的确认界面(一般是多选框,列出所有的授权信息),让你了解你授予了那个软件多少权利去使用你的账号。
第二,用户的授权,即用户允许软件访问的内容。一般来说,一个软件通过QQ/微信/微博登录时,会先跳转到QQ/微信/微博的登录界面。当你用正确的账号和密码登录QQ/微信/微博后,会弹出一个授权信息的确认界面(一般是多选框,列出所有授权信息),这样你就可以知道你授予了那个软件多少使用你账号的权限。
今日头条微信授权登录界面
比如今日头条用微信授权登录,就会出现这样的确认界面。从上面可以清楚的看到,今日头条可以获取我微信的***息(昵称、头像、地区、性别),仅此而已。
不是所有软件都可以第三方授权登录吗?
理论上,是的。
不过,接入第三方登录也需要一定的条件。其一般流程如下:
第一步,软件开发者需要找到第三方开放平台(如微信开放平台、QQ互联网、微博开放平台等。)并注册成为开发者。
第二步,注册应用(提供应用名称、简介、Logo等相关信息)等待平台审核。
第三步,申请权限(开放平台会根据你的软件来确定你的权限),有些会和第二步一起完成。
第四步,应用注册成功后,你会得到你的应用的识别信息。(通常是AppKey和AppSecret的组合)
第五步,根据开放平台提供的API,实现登录。
第六步,测试和发布。
如何获取授权码,然后交换AccessToken,如何读取登录信息是专业开发者需要考虑的。开放平台里也有详细的文档,这里就不赘述了。
“为什么说所有软件理论上都可以访问第三方授权登录?”
因为开放平台对所有软件一视同仁。
“那为什么还要加个‘理论上’?”
因为开放平台有“严格”的审核机制。
审计机制一般包括两部分:
首先是对开发者的审核。个人和公司都需要提供相关资质(如个人实名认证,公司三证合一等。),有的还会支付一定的费用。这样以后出了问题就有据可查了。
二是审核应用,检查应用是否违反国家政策(包括敏感信息、反动言论、色情等)。),以及是否取得了不应取得的申请权。
所以只要是正规申请,都可以成功申请接入开放平台。
为什么第三方授权登录会“断”?
从第三方授权登录的初衷来看,一个软件完全可以抛弃自己的账号体系,打造一个轻量级的应用,不用担心账号密码泄露、用户流失、设计成本降低等安全问题。
但是,现在第三方授权登录不再只是登录,更多的是绑定。我们也可以称之为伪登录。也就是说,软件有自己的主账号,你可以用软件的主账号登录,也可以通过第三方授权登录。第一次使用时,软件会根据你使用的第三方登录账号的信息设置一个主账号(也叫内部账号),然后将第三方登录信息与你的主账号信息绑定。
为什么会这样?众所周知,一个软件要做好,用户是最重要的。如果用的都是第三方登录的账号,自己的账号体系没有建立,第三方账号体系崩溃或者和第三方平台冲突,人家不让你用怎么办?更简单的说,第三方服务器宕机无法登录怎么办?
所以很多软件的选择是:将第三方的登录绑定到自己的主账号,比如今日头条。可以绑定QQ、微信、天翼账号等账号。登录时可以用定位器号或QQ、微信、天翼账号等登录。
第三方授权登录安全吗?
说到这里,你一定要问,我用QQ/微信/微博等第三方账号登录安全吗?会不会泄露隐私?
我可以很负责任的告诉你只要你用得对,就和用QQ/微信/微博一样安全。至于隐私泄露的可能性,应该比直接输入***号要小很多。
为什么?
第一,第三方授权登录,不会直接要求你输入第三方账号的密码,需要跳转到第三方登录。(所谓跳转就是打开一个真实的QQ/微信/微博网站或App)。所以,你的QQ/微信/微博账号和密码是安全的。
第二,第三方授权登录,获取的信息有限,需要你的授权确认。(如果今日头条登录微信,只会得到昵称、地区、头像、性别等***息。当然也可以获取微信号,非授权信息,比如你的好友列表,你的朋友圈,你的钱包等等。).
那为什么还要再加一个“正当用法”呢?
正确使用是指你要保证你使用的第三方软件(QQ/微信/微博)是从正规渠道下载的,或者是从正规网站打开的。
如果定位器被第三方授权登录,一定要跳转(打开)第三方软件(QQ/微信/微博),然后输入登录信息。
如果网页使用第三方授权登录,确保跳转后第三方软件的网址正确,然后输入登录信息。(这怎么保证?很多网站包括QQ/微信/微博都提供扫码登录。在可以扫码登录的情况下,千万不要输入密码登录,这样才会安全。)
摘要
第三方授权登录相对安全,隐私泄露的可能性会大大降低,但你要特别注意以下几点:
使用QQ/微信/微博登录时,会跳转到QQ/微信/微博里面,然后在QQ/微信/微博里输入密码登录(定位器上一般都会有免密登录,不是第一次登录可能看不到这一步)。在使用QQ/微信/微博登录时,会有软件可以获取的权限的说明,一定要看清楚,如果你觉得超出了你的接受范围,可以选择拒绝。在网页端登录QQ/微信/微博时,可以扫码的话,就不要选择输入账号+密码了,扫码更安全。
本文来自不择手段投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/517870.html