对于登录注册逻辑的总结讨论
一个产品该如何识别自己的用户?哪些场景要求用户登录或者注册?注册需要哪些信息?用户登录需要校验哪些信息?在互联网产品长期发展中,很多问题大家也基本总结出了标准化的方案。这期主要是围绕这些问题,盘点登录注册流程的各种功能以及其应用场景。
1. 一个产品该如何识别自己的用户?
这个问题比较宽泛,其实要识别用户主要分类为两种场景:登录前,登录后。
登录前
大部分产品登录前是可以使用很多功能的,这里就存在一个用户识别的问题,解决方案主要是取决于用户使用的平台。如果使用的是浏览器,主要的方法是通过cookie。如果是移动设备,则可以使用设备ID,比如Android的device ID,iOS的IDFA。当然,如果是微信平台,也可以使用微信的OpenID。
登录后
登录后识别用户的方式也有多种,比如使用的第三方账号ID,比如使用注册手机号,比如使用注册的邮箱。但是,最一般也是最推崇的做法是,使用自己的一个user ID。同时,所有的产品功能如果需要识别用户身份,也都应该用user ID进行识别。同时,手机号,注册邮箱、第三方账号等其他关联信息,都应该可以和这个user ID进行关联。这样能最大程度保证账号体系的稳定性和扩展性。
2. 哪些场景下要求用户登录或者注册?
要求用户在使用产品前注册或者登录,是最简单粗暴的方法,但是这里可能对用户增长有很大的影响。所以对于用户认知没那么高的产品,一般而言,不会要求用户立即注册或者只是要求简单的注册。把注册流程或者补充注册信息的内容,后置到一些关键节点,是更明智的做法。
比如:
- 查看更多评论的时候
- 查看其他用户个人主页的时候
- 评论和点赞内容的时候
- 商品结算的时候
- 企图使用某些特权功能的时候
典型的做法,比如电商,点击购物车结算才会要求用户登录注册,这样的方式更能留住用户,而不是在使用产品之前就流失。
3. 注册需要哪些信息?
3.1 可验证的外部账号验证
比如手机号、邮箱这些个人通讯账号,或者有通讯账号属性的社交网络账号,比如QQ号,微信号,微博账号。一般而言,这些账号的特点是,可进行验证性。比如邮箱、手机的验证码,微信QQ、微博账号的授权登录。
可验证性的本质有两点:
- 可以验证用户身份的有效性
- 可以在密码丢失的情况下找回密码
当然,为了最大程度保证账号安全,这个外部账号最好可以是手机号。
3.2 用户名和密码
填写用户名和密码是用户注册一个传统的方式。但是这个方式目前也存在很多问题,比如被撞库。现在有些产品已经在尝试去掉这个环节。一方面是为了简化注册流程,增加注册转化。另一方面,移动时代,APP基本可以一次登录一直用,登录情况比较少,完全可以用手机号验证码登录,或者三方登录进行。
3.3 注册验证码
注册验证码是为了防止机器大量刷注册量,尤其是部分注册不需要填写手机号的产品。可以使用图形验证码,也可以使用比较简单的用户行为验证码(需要了解验证码,可以查看上期内容)。
4. 用户登录需要校验哪些信息?
这个也是和用户使用的登录方式有关,根据用户登录的方式,一般分类为一下几种:
- 账号密码登录:用户输入账号密码登录
- 第三方账号登录:第三方账号授权校验
- 手机验证码登录:用户属于关联手机号和手机验证码进行登录
账号密码登录有极大的撞库风险。一般而言,用户只用一个手机号,使用这个手机号在各种产品上进行注册。而有大量的用户使用相同或者相似的密码,一旦有产品安全漏洞,密码泄露,其他平台则可以被撞库登录。第三方账号也存在相同的风险,一旦第三方账号密码被他人获取,则可以轻易登录网站。
所以,如果是账号密码登录,第三方账号登录,存在异常登录情况,则需要进行安全信息的验证。
5. 异常登录判定和安全信息验证
异常登录的判定也是一个相对比较复杂的过程,基本上对于大的公司,比如阿里,是一个大的团队在做。简单来说,收集用户登录的各种行为进行校验。包括但不限于:
- 登录地点:如果一直在北京使用产品的用户,两个小时后出现在广东,则系统可能会判定为异常。
- 登录设备:对于移动登录,如果更换了移动设备,则系统可能判定为异常。
- 登录网络环境:IP变更,4G和wifi的变化,系统都需要判定是否为异常。
- 校验既可以是简单粗暴的给策略,也可以是用大量的数据样本进行机器学习,进行判定。
安全信息验证部分,如果用户绑定了手机号(手机号相关内容可以查看上篇),则可以直接要求用户进行手机验证。如果用户没有绑定手机或者用户暂时不方便使用手机,则可以使用图形验证码或者用户行为验证码验证。或者也可以使用产品的信息进行验证,包括但不限于:
- 历史购买物品
- 历史状态定位地点
- 通讯录内容验证
- 发送给通讯录好友进行验证
当然,如果用户都不能通过自动流程,也可以进行人验证,提供一些无法格式化提供的信息进行验证。
6. 小结
登录注册流程是很多初级产品经理书籍里面经常提到的Case,比如交互的书就会说按钮怎么调整,注册率上升了多少个点之类。然而,这些流程其实只是一小部分。基本上,在之前产品设计不犯错的情况下,也不会有一个按钮调整上升多少个点之类的传奇。
此篇文章没有讨论登录注册交互层的东西,更多的是对于登录注册逻辑的总结讨论。牵扯到很多异常的Case。产品经理的初级阶段可能只能看到几个简单页面的调整,其实合格的产品经理更应该是看到页面的逻辑,以及因为逻辑而派生出来的更多页面。登录注册流程正是这样看似简单,实则牵扯很多复杂逻辑和异常Case的流程。
如果非要有什么拔高性的结尾,那么我想说的是:不要以为只沉迷在书上那些摆放按钮的故事中,就可以做好一个产品。
#专栏作家#
潘一鸣,人人都是产品经理专栏作家,THU/PM,知乎专栏:产品逻辑之美
本文原创发布于人人都是产品经理。未经许可,禁止转载。
用户行为验证码(需要了解验证码,可以查看上期内容);
如果用户绑定了手机号(手机号相关内容可以查看上篇);
这两篇都没找到,好歹给个链接或者文章标题呀?
😉
受教了,但是好像没有讲到用邮箱注册这块
移动时代,邮箱注册基本被淘汰了已经。
并没有,对于很多做邮件营销的客户,尤其是欧美市场,使用邮箱注册的还是大部分
现在基本都把账号设为手机号码了
逻辑很清晰~!
谢谢分享,受教了
行家,赞,多沟通:)