用户身份标识与账号体系实践

科技资讯 投稿 32700 0 评论

用户身份标识与账号体系实践

一、业务背景

通常在系统研发的过程中,需要不断适配各种业务场景,扩展服务的领域和能力,一般会将构建的产品矩阵划分出多条业务线,以便更好的管理;

比较经典的场景,用户从应用端完成注册之后,通常不会过多提供自身信息,由于业务需要不断丰富用户画像,所以用户数据通常会被调度到独立的管理系统中,通过不同的触点反馈进行信息扩展,比如采集埋点数据,线下接触,营销电话等;

二、唯一标识

用户的行为数据在当下的互联网产品中,是极其具有分析价值的,不同的应用端不管是否处于登录状态,在产品中产生的数据都是有记录的手段,进而在数据层面分析识别;

从数据分析的角度上来看,显然不希望用户的行为信息被分裂并且各自孤立,这样对多终端多状态下的用户行为数据进行全域关联,是行之有效的方式,其基本原理涉及到ID的映射技术;

三、Id映射

其实现的原理并不复杂,首先需要提供一套映射库,当新的手机号被系统识别采集时,在映射库中新建一条数据,手机号和对应的唯一ID,此后其他路径的数据,如果手机号相同则绑定在该ID下面;

四、数据关联

在执行数据的全局调度和分析时,则通过映射库的标准关系,基于ID标识将全部业务线的数据进行查询和统筹分析,从而生成相对全面的数据档案,以及标准的分析逻辑;下面给出一个参考性的结构设计:

这种情况下就需要执行相应的业务策略,比如同一个手机号可能登录过不同手机中的相同应用,手机中的应用也可能被多个账号登录过,此时则需要基于策略做关联上的取舍,可能是账号登录时长,或者登录前后的时段,无法一概而论;

五、注册登录

  • 用户在登录表单中,输入手机号并获取验证码;

  • 在登录服务中,生成并维护验证码的时效;

  • 验证码需要借助对接的第三方短信平台推送到用户手机中;

  • 登录表单填充验证码之后提交登录信息进行验证;

  • 当登录验证成功之后,如果用户未注册则初始化账号体系;

  • 账号体系校验和维护之后,通过异步方式关联ID标识;

  • 最后需要给用户端返回Token身份令牌,作为账号识别;

用户身份识别和账号作为系统非常基础的核心能力,在设计的时候既要有用户体验,同时要重视数据的安全性;作为核心能力在前期设计的时候就需要一定的前瞻性,做好可能性的规划和结构预留,避免后续的迭代跨度过大。

六、参考源码

编程文档:
https://gitee.com/cicadasmile/butte-java-note

应用仓库:
https://gitee.com/cicadasmile/butte-flyer-parent

编程笔记 » 用户身份标识与账号体系实践

赞同 (35) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽