其他

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

2017-10-12 岸泥 麦林微讯


作者:岸泥

全文共 1616 字,阅读需要 3 分钟


———— / BEGIN / ————


最近一直在做账户安全的需求,但在调研时发现,资料很少。于是只好边做边总结。


在互联网产品中,账户是最最基本的功能,太常见了,常见到被我们忽略。


我们理所当然觉得,做一个产品,注册登录是必需的,可能很少会去想,为什么要有一个账户?账户的作用到底是什么?我们用户的账户够安全么?


账户,有必要么?


每次用个产品(网站、桌面客户端、APP、后台系统等)还要先注册、填写表单、登录,真麻烦,能省去这个步骤么?


如果你用的产品是个免费的工具,其实是没什么问题的——因为每个人使用的都是相同的本地功能,且彼此之间毫无瓜葛。


但假设,这个工具有高级的付费功能,情况就不一样了。


我们需要让服务端知道,哪些人是免费用户,哪些人是付费用户,并向付费用户收费,然后开放高级权限。


为了让服务端知道谁是谁,谁有什么特征,谁能干什么,谁不能干什么,于是有了账户的概念。


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


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


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


在网游中,房子就是你,你就是房子。


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


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


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


验证开门的你是谁?


有时候找到门牌号来开门的人很多,鱼龙混杂,而我们只准主人进入房子。


那么问题来了:如何验证你是房子的主人?


方式有很多:


  • 密码:能用钥匙打开门的就是主人

  • 验证码:增设一道门,并给出一把临时的钥匙,能用临时钥匙开门的就是主人

  • 手势密码:能用手比划出规定动作,就是主人

  • 密保问题、购买记录:记得问题的答案,或者主人曾经的所作所为,就是真正的主人

  • 身份证号、银行卡信息:能说出身份证号或银行卡信息,就是真正的主人

  • 指纹识别、声纹识别或刷脸识别:指纹、声纹或脸型匹配的话,就是真正的主人


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


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


如何保护账户安全?


1. 阻止异常登录


增加密码复杂度:


注册设置密码,至少6位,英文+数字组合,英文必须有大小写,等等。


钥匙的棱棱角角多了,自然很难复制,不容易被盗取。


登录频次限制:


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


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


如下图所示:



登录设备更换限制:


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


如下图所示:



登录IP变更限制:


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


2. 知会用户


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


如下图所示:



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


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


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


———— / END / ————



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存