账户安全,产品经理的必修课

10 评论 15167 浏览 128 收藏 7 分钟

做一个产品,注册登录是必需的,但是你是否考虑过账户安全呢?

最近一直在做账户安全的需求,但在调研时发现,资料很少。于是只好边做边总结。在互联网产品中,账户是最最基本的功能,太常见了,常见到被我们忽略。我们理所当然觉得,做一个产品,注册登录是必需的,可能很少会去想,为什么要有一个账户?账户的作用到底是什么?我们用户的账户够安全么?

账户,有必要么?

每次用个产品(网站、桌面客户端、APP、后台系统等)还要先注册、填写表单、登录,真麻烦,能省去这个步骤么?如果你用的产品是个免费的工具,其实是没什么问题的,因为每个人使用的都是相同的本地功能,且彼此之间毫无瓜葛。

但假设,这个工具有高级的付费功能,情况就不一样了。我们需要让服务端知道,哪些人是免费用户,哪些人是付费用户,并向付费用户收费,然后开放高级权限。为了让服务端知道谁是谁,谁有什么特征,谁能干什么,谁不能干什么,于是有了账户的概念。

在互联网的世界中,一个个账户就好像一座座房子,注册就是建房子,账号是门牌号,密码是锁,登录就是开门。

在付费类的工具产品中,免费用户可能只打得开一两间房子,而对于付费用户,他们能解锁这座房子的所有房间。

在即时通信类产品中,房子存储了你的个人资料,聊天记录,以及关系链。别人想获得进入你房子参观、与你交谈的权利,需要事先征得你的同意。

在网游中,房子就是你,你就是房子。人民币玩家可能手一挥买下一套大豪宅,而你仍在为小户型的装修费通宵刷副本。

从功能性的角度来看,账户是用户权限的标识,存储用户信息的空间,甚至是用户的代表。而从技术性的角度看,账户就是以userID为主键的一大串数据表记录

好了,进入正题,花费这么多步骤,辛辛苦苦建好的房子,防盗工作如何开展?

验证开门的你是谁?

有时候找到门牌号来开门的人很多,鱼龙混杂,而我们只准主人进入房子。那么问题来了,如何验证你是房子的主人?方式有很多:

  1. 密码:能用钥匙打开门的就是主人
  2. 验证码:增设一道门,并给出一把临时的钥匙,能用临时钥匙开门的就是主人
  3. 手势密码:能用手比划出规定动作,就是主人
  4. 密保问题、购买记录:记得问题的答案,或者主人曾经的所作所为,就是真正的主人
  5. 身份证号、银行卡信息:能说出身份证号或银行卡信息,就是真正的主人
  6. 指纹识别、声纹识别或刷脸识别:指纹、声纹或脸型匹配的话,就是真正的主人

无论采用哪种方式,验证信息都需要在建房子的时候就做进去,不然,你拿什么来验证?

对于最后一种方式,由于每个人的指纹、声纹与脸型都是独一无二的,而且几乎无法复制。。。可以说安全性相当高。但由于技术限制等原因,目前大多数产品仍采用前几种方式,或前几种方式的组合,来保护账户。

如何保护账户安全?

1、阻止异常登录

增加密码复杂度:

注册设置密码,至少6位,英文+数字组合,英文必须有大小写,等等。钥匙的棱棱角角多了,自然很难复制,不容易被盗取。

登录频次限制:

短时间内登录失败次数达到一定量,再次登录,则增设方式2,通过填写图片验证码或短信验证码,防止账号密码被暴力验证。

短时间内登录失败次数达到安全阀值时(如密码错误5次),则对账户予以暂时冻结,冻结期结束再开放登录操作。如下图所示:

登录设备更换限制:

账户与设备号绑定。每次登录检测与账户绑定的设备号,如果是一台新的设备,则增设一道验证方式。如下图所示:

登录IP变更限制:

每次登录检测IP地址,如果检测到新的IP地址,则增设一道验证方式。

2、知会用户

检测到异常登录情况时,通过APP全局弹窗、短信、push或邮件等方式知会用户,并提示接下来的步骤,一般都会提示用户重置密码,更新密保信息等。如下图所示:

有人可能担心,一道道的安全验证,会不会影响到操作上的体验?

在账户安全的问题上,绝不能因为所谓的操作流畅性就降低安全标准。尤其是对于账户安全要求很高的产品,宁可让用户多做几步验证,最大程度地确保验证的准确性。

在交互上,用户会存在操作负担与认知负担,减少认知负担的优先级理应高于减少操作负担。如果因为减少操作负担,造成了账户安全问题,极大地增加了用户的认知负担,是非常得不偿失的行为。

 

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

题图来自PEXELS,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 请教楼主,在判断短时间内登录失败次数达到安全阈值时,是以账号+登录设备来判断是否超过安全阈值,还是只以账号判断(包括不同设备之间的尝试)?

    来自江苏 回复
  2. 帮助很大,感谢原创!

    来自广东 回复
  3. 厉害了,👍

    回复
    1. 谢谢!

      来自浙江 回复
  4. 蟹蟹小伙伴,刚好用的到 😉

    来自北京 回复
    1. 哈哈,我的荣幸

      来自浙江 回复
    2. 😉

      来自北京 回复
  5. 感觉应该是帐号 帐户

    来自广东 回复
    1. 恰恰不是。

      来自北京 回复
    2. 账户是一个综合性的概念,账号就是比较具体的登录名/用户名/手机号/邮箱等。从关系上来说,账号是从属于账户的。

      回复