对于登录注册逻辑的总结讨论

9 评论 32195 浏览 231 收藏 9 分钟

一个产品该如何识别自己的用户?哪些场景要求用户登录或者注册?注册需要哪些信息?用户登录需要校验哪些信息?在互联网产品长期发展中,很多问题大家也基本总结出了标准化的方案。这期主要是围绕这些问题,盘点登录注册流程的各种功能以及其应用场景。

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,知乎专栏:产品逻辑之美

本文原创发布于人人都是产品经理。未经许可,禁止转载。

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 用户行为验证码(需要了解验证码,可以查看上期内容);
    如果用户绑定了手机号(手机号相关内容可以查看上篇);

    这两篇都没找到,好歹给个链接或者文章标题呀?

    来自北京 回复
  2. 😉

    来自北京 回复
  3. 受教了,但是好像没有讲到用邮箱注册这块

    来自美国 回复
    1. 移动时代,邮箱注册基本被淘汰了已经。

      来自北京 回复
    2. 并没有,对于很多做邮件营销的客户,尤其是欧美市场,使用邮箱注册的还是大部分

      来自美国 回复
    3. 现在基本都把账号设为手机号码了

      来自广东 回复
  4. 逻辑很清晰~!

    来自北京 回复
  5. 谢谢分享,受教了

    来自广东 回复
  6. 行家,赞,多沟通:)

    回复