意想不到的「重设密码」挑战 / 理想园

去年我提了一嘴,现在在做一个客服的工作。不做不知道,电脑常识的下限真的让我永远想不到。

对方的提问常常让我反思,为什么会造成这种情况。作为一个技术员,换个角度看看普通人的操作,其实对更友好的工程设计还是挺有帮助的。

这一篇,来看个似乎简单、但不少人会有奇奇怪怪的问题的业务:「重设密码」。以下提到的虚构问题,基本上都有真实案例支撑,毕竟生活比故事更精彩。

前情提要

简单介绍一下业务的背景。这是“我的大学”的统一账号登录系统,同一个系统支持三个账号来源:普通师生、访客系统、校友系统。

师生自然会有学工号,这个学工号是由一串乱序数字组成的(然而其实是有校验规则的),大家平时都记不住,都是看校园卡才知道号码,而用户名还是记得很清楚的。

而很多人不知道的顶层设计是,学工号是相对比较保密的信息,不应该同时跟姓名等信息发布出来。比如朱八杰同学的学号是 S19002459,他平时只记得自己的邮箱 zhubj@daxue.edu.cn,反正邮箱账号密码也可以用来登录校园网 Wi-Fi。

我的用户名是什么

朱同学忘记密码了,在登录页面上挣扎了一会看到了重置密码链接,结果看得有点懵:

我的大学密码找回

这个页面的字也太多了吧,太长不看。我忘记密码了,点忘记密码。结果提示“请完成必填项”。哦这个表单是要填的啊。

看这个意思,输自己的邮箱就行了?于是他输入 zhubj@daxue.edu.cn,看着下面两个按钮还想了想该按哪个按钮,应该还是忘记密码吧。结果系统提示,找不到用户名。朱同学急了,我这账号难不成是被销户了?

欸页面上有个电话可以问问,一问,人家说输入 zhubj 就行了,他哦了一声,输入进去,成功了。他还有点懵懵的。


从开发者的角度来看,这个分流页面显然是在帮用户跳转到三个账号系统中,正确的那一个密码找回页面。但他们优化也做了一半,一输入完整学校邮箱,就直接被送到访客系统去查询了,自然是惊人的无结果。

当然你会说,不是页面上有说明吗,实际上还是有不少人又不看字、试错能力也不强,遇到错误就觉得自己很无辜那样子。

我觉着这个页面比较理想的设计,除了更好的容错,还可以直接做一个选项让用户选择自己的账户类型。比如这里有三个系统,就列出三个选项解释,让用户选。然后到底是忘记用户还是忘记密码,应该做成选框而不是按钮,更好地表示这是个选项,不是表单外的链接按钮。

其实比较贼的做法是,三个系统的选项实际上不会起作用,最后还是目前这个匹配的逻辑。但多了一个选项,用户要做选择,字会看得更细一些,也会更有针对性地去看说明。

当然选择多了,另一种用户就出现了:什么都不想看、看到选择就困难。来看下一个页面。

学号怎么错了

请输入基本信息

朱同学被送到了普通师生密码找回页面,要求输入基本信息。朱同学开心地填写了姓名,看到学工号就愣了,靠我不知道学号怎么办,没人告诉我我的学号是什么啊。

不要忘了朱同学刚在打电话,他问了问对方能不能查学号这个问题,人家告诉他校园卡上有。哦!朱同学这才急着把卡拿出来,输入了 19002459,结果系统提示,学号错误。

他又急了,电话那边也一头雾水,于是问了问他学号是什么,结果朱同学刚读出 1,对面就说“学号前面有个 S”。哦!改了改果然通过了。


关于不知道学工号这个问题,不要笑,很多新师生跟校友都是这样的,其实还算可以理解吧。但他们甚至会指望只用姓名就能查到学工号,拜托,人口爆炸的年代,重名可多了去了。而且前面也提到,学工号算是比较私密的信息,真要查询的话,需要多重身份验证。

以及你也会发现,这个页面问的问题的确多了些,但是很多人在不知道怎么填学工号之后就慌了,就很完美地把下一行字忽略了:

“如果你不知道学工号”

所以想把表单设计得可用,真的是一个在简单及复杂之间平衡的过程。另外你也注意到了那个 S 的问题,一个好的办法是判断到错误的时候,给错误信息,然后给一个示例。给 HTML5 表单独有的占位符是没有用的,来举个让人吐血的例子:

在我的大学网络服务的另一个表单里,有一个位置要求填写“我的大学邮箱”,输入框也有占位符“用户名@daxue.edu.cn”,结果三天两头还是有人输各种第三方的邮箱。因为那个表单没有实时校验,到最后都得人工发邮件去让提供一个符合要求的邮箱(然后还有些明显有学校邮箱的人根本不回复)。

选个密码

这个页面吐槽的点嘛,只有用户会被要求再输入一次当前用户名(但如果选的密码不符合要求的话,如上图,已经输入的用户名会被保存下来)。你会注意到,整个流程里会让用户输入三次用户名,反正很让普通人费解的设计。

别的都还挺好的。尤其是错误提示会告诉你密码有哪一条规则没有满足。这个页面其实比较老,没有用上各种实时前端检查,但总体而言还行。这里要严重批评微软的一款叫做 Microsoft Identity Manager 的垃圾体验,同一个流程位置的密码不符合要求,只会提示错误“你的密码没有满足机构设置的规则”,根本不告诉你为什么,自己琢磨去吧。尤其是如果有些规则页面上漏写了的话(比如不能用之前用过的密码),分分钟客诉。

最后的身份验证

朱同学千辛万苦地完成了前面哪些步骤,但实际上验证身份这件事并没有完成。别的朱同学都还是能记得的,但看着那个密保问题他有点懵。

他试了好几次,都是提示错误。幸亏他还没挂电话,一问,还是可以在通过电话进一步验证身份之后,清除密保问题的。


这个地方可能唯一值得吐槽的是没有提示信息错误的解决方法。不过每个页面下方最醒目的位置都注明了客服电话,应该也足够了。

其实这个客服电话的位置真的太难得了,没有用链接,也不会隔着一段空白放在很多用户看也不看的页面最底部,简单直接,没毛病。

顺便我的大学有一个设计得很抓人的下拉菜单设计,把占位符在菜单中的位置放在最中间,真的让人感动。

后话:账号服务藏得深

朱同学终于把密码重设完了,那我最后提一点跟重置密码并不是很有关的、深一点的话题,很多人不想看的那种。

对于使用单点登录来连接多个服务的组织来说,“单点登录”这件看起来理所应当的事情,有时候还是需要多一些宣传的。一个例子,用户在搜索引擎上搜索“我的大学 登录”,要不就打开了“单点登录已失效”的页面,要不就找到了跟自己的身份一点关系都没有的系统(然后搜索结果的标题还真是单点登录的“我的大学登录系统”)。然后就产生了“为什么我一个学生登录(工资)系统失败”这样的问题——因为他们并不会去看登录页面一行小字写的其实是在登录工资系统。这时候 SEO 怎么做,似乎就变得有点意思了。

还有一个难题是,每个服务里的账号设置的“修改”并没有跟单点登录对接,所以用户通常会找不到在哪里改密码等等。登录的时候能看到“账号服务”链接,但登录完成之后就无感跳转、什么都看不到了。比如我的大学,还在单点登录系统上对部分服务做了二次验证的保护。然而很糟糕的是,这个二次验证的自服务入口只在登录时才能看到。用户一旦问到如何在已登录状态下进入二次验证的自服务页面,客服通常只能说“请开隐身窗口再登录一次”。

所以看起来很安全、很基础、很无味的一个基础服务,想做到体验好真的是需要功夫的。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)