Google, GitHub, Twitter, Facebook, Weibo...纷纷有自己的认证系统,使得在他们平台注册过的用户可以快速在其他产品获取一个身份,不再需要设置用户名等一些基本信息等。
但是,他们始终自己也是一个产品/互联网公司,在账户管理上限制的有点多了,例如 GitHub 是一个开发者必备平台,对一般拥有账号的开发者很方便,但普通用户就不太可能用到了。另外,由其他的互联网公司提供授权,对于很多公司,本来就不太乐意。
所以,如果有一个统一的账户管理平台非盈利组织 (以下称作 Account Platform ), 他没有绑定产品,做到了这些 (暂时想到):
- 每个用户/组织有唯一的 key 值,该值可以很长,由系统自动生成,是用户/组织在 Account Platform 的标识符。
- 可供修改的 ID 值,该 ID 值是登录其他产品的标识符,即授权给一个产品后,便类似于以该 ID 注册一个身份 (对于产品内部可以给个字段标示,以防止与产品原生 ID 冲突).
- 国籍值,账户所属主国籍,在下面会阐述需要该字段的原因。
- 提供基本的信息设置:Email, Fullname, Avatar, Bio...
- 已授权产品的管理,在 Account Platform 下管理自己互联网上的账户,登录信息,账户安全等。
问题
如果以上需要实现,虽然对一个互联网用户很友好 (一个 Account Platform 通行证就行了), 但是:
- 安全问题是主要的,在便利的同时,安全也寄托在了一处。此处我想到的是,该平台不应该独立成某个盈利组织,应该由各大巨头共同维护。
- 由于 Account Platform 适用于所有互联网用户,因此数据庞大。对于 ID 被占用的情况的问题 (这是 Geek 很看重的东西), 我想到是设置一个国籍标志,让每个 Account Platform 都拥有一个主国籍。理论上在同一个国籍下,ID 冲突的可能性还是很低的。当然对于普通用户,注册或授权时会自动根据地理位置设置好国籍,完全不需要理会。于是,当世界上两个国家里名字都叫做 Tom 的人在连续注册的过程中不会产生困扰,组织更是如此。
- 对于大多数产品需要邮箱注册的问题,Account Platform 注册成功时会提示绑定一个邮箱,但不强制。当用户尝试用为设置邮箱的 Account Platform 账户授权时会给出提示绑定邮箱。
最后
这个"扯淡"是本人经常在各大网站登录,并且由于 ID 各网站不统一 (被占用) 导致各种登录困难而随意想出来的,其可行性是想到了 Gravatar 的成功,当然头像不属于敏感信息,实现起来比这个容易多了。
最后,这个想法能实现吗?如果不能,关键在于哪些点?