用户模型之三层身份模型

3 sec read

先前介绍过三户模型,这天要介绍的是三层身份模型,从使用层面,三户模型更加适合交易类网站,三层身份模型可能更加适合社交性质的网站。三层身份模型将用户分层三个层次,分别为:账户标识符,登录标识符和公开标识符。翻译成大白话可以是:账户ID、登陆账号、昵称。

账户标识符(DB Key)

从软件工程的角度,需要在数据库中存在一个用户标识(key)来记录每个用户的记录。这个用户标识可能会被用在Cookies或者URL中,这个账户标识符必须是永久的、唯一的。通常是由系统自动生成的一个ID,这个ID不受用户的控制,从用户角度这个标识符应该是不不可见或至少是惰性的,这个标识符不应该与一些公共名称,比如手机号或邮箱。

登录标识符(会话认证)

在创建与账户标识符关联的有效会话(Session)时,登陆标识符时必须要的,他们用来从服务中获取授权。通常由唯一的账号/密码对表示(这里的账号可以是邮箱或手机号,也可以是用户选择的用户名)。注意,账户/密码并不是一定需要存在的,笔筒通过oAuth形式的授权登陆(类似微信登陆、微博登陆等)。

将登陆标识符与账户标识符分开,可以使得用户更加容易的改变登陆方式。由于账户标识符不需要更改,因此可以避免更换登陆方式或登陆账号带来的数据迁移问题。最重要的是,可以提供多个不同登陆标识符附加到单个账户上,从而可以允许服务聚合从多个身份供应商收集的信息。(如授权获得微信或微博的个人信息)

公开标识符(社会标识)

与账户标识符和登陆标识符不同,公开标识符标识用户希望如何被服务商的其他用户感知。在线用户的公共标识符通常是复合对象:照片,昵称,可能还有年龄,性别和位置。它为任何观众提供了足够的信息,可以快速解读个人背景。公共标识符通常链接到详细的用户配置文件,其中可以进一步识别身份。公开标识符在某些情况下需要唯一(比如类似微博的@功能),有时是不需要唯一的(如微信的昵称)。

参考链接:http://habitatchronicles.com/2008/10/the-tripartite-identity-pattern/

打赏作者
微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

《怕蛇的人怎么学Python》:开篇

先前在自己的博客上,零散的写了一些Python的学习笔记,涉及到的内容比较凌乱,完全没有逻辑。反思自己对所学的
3 sec read

Hive SQL中的datediff、current_dat…

Hive SQL中的datediff函数返回的是2个日期的天数。在使用过程中发现了一个比较有趣的坑: SELE
2 min read

使用Python进行相关性分析

在数据分析时,经常会针对两个变量进行相关性分析。在Python中主要用到的方法是pandas中的corr()方
42 sec read

发表评论

电子邮件地址不会被公开。 必填项已用*标注