OAuth2授权原理
最近在做第三方接入的,初步定下使用OAuth2协议,花了些时间对OAuth2的授权方式做了些了解。
我还记得一两年前,跟一位同事聊起互联网时,当时我说过一个想法:
目前不少较为稀有的资源,很多都是论坛提供下载的,论坛提供的下载往往要求一个论坛帐号,更有甚者,需回帖才可见,又或者下载需要消耗一定的虚拟货币,而这些货币可以用论坛活跃度而获得。假设现在我是一个普通用户,我要找某个资源。通过搜索引擎或者资料,我发现在某个论坛有这个资源下载,从其他地方获得这个资源代价比较高或者说根本就找不着。当我准备下载时,很可能就被提示需登录后才可下载,随机被跳转到注册页面。
为了这个资源注册一个帐号?我想,无论谁在99%的情况下都不乐意去注册一个只是用一次的帐号,偏偏有些论坛就是为了某些原因要求你必须提供一个帐号。好吧,像我这样的人,当然是瞎填点信息注册个帐号了事。至于注册了帐号需不需要金币或者多少声望才能回帖下载之类的,这里就不唠叨了。这个过程的关键点是:我为了一个临时性的需要,注册了一个永久性无关痛痒的帐号,这个帐号使用一次之后,基本上失去价值了。有无数无聊的用户花了N多的时间在M多的论坛里注册了N*M个无用帐号,这个过程除了对某些统计指标有利以外,对用户没有任何价值。
可不可以做一个平台,使任意用户可以在任意论坛注册一个帐号,随后这个帐号和密码自动登记到这个平台中作为公共帐号,之后,其他用户再访问这个论坛时,就无需再次注册帐号了,直接在这个平台上,自动地使用公共帐号去做该做的事。这样,随着用户数的增加,最终可以达到一个比较理想的情况:大部分论坛的临时性操作,用户都不用再去注册了,也不用担心自己的常用帐号密码等信息泄漏的问题。尽管对于一些有“经济系统”的论坛(需要通过活跃度/发帖数/现金等有偿获得虚拟货币,存在消费行为),这个平台可能不适合,但即使需求只被解决了一半,也是个有价值的产品。