« 在 C++ 中引入 gc 后的对象初始化 | 返回首页 | 感谢各位投递简历和参加面试的同学 »

为什么一定要有密码?

以前写过一篇 可不可以只有密码没有用户名? 。里面提过一个让用户使用 email 做用户名,不设置密码的方案。今天想细化一下。

不设置密码有时候比设置密码,给用户的安全方面的感觉更好。因为,有些服务用户并不在乎帐户数据的私密性,也不在乎被人冒充。(比如在我的 blog 的留言,并不需要注册)要求输入一个密码,对用户反而是件很纠结的事情。用自己常用密码吧,若被服务商恶意记录的话,自己别的位置的帐户变得不太安全。随便选个新密码吧,很可能忘记。输入个简单的统一密码吧,基本行同虚设,跟没有密码区别不大。反而提供了虚假的安全感。这种安全感比没有更差。

而服务提供商在乎的只是用帐户名去标识一个用户,制作用户注册的流程,即费时,又费力,还提高了新用户进入的门槛。

我个人认为这样会好一些。

  1. 用户使用仅仅需要输入一个他使用的 email 地址(鉴于中国国情,另兼容输入 QQ 号也可以)

  2. 当发现用户第一次使用这个服务,触发注册确认的流程。提示用户激活,从 email 中收取激活链接。在这步,如果用户是误输入帐号(比如他曾经注册过,就会发现自己输入错误),可以取消。这样不会对他人造成骚扰。ps. 这个步骤也可以酌情取消或可选(并不阻止用户进行下面的服务体验),毕竟让用户通过 email 确认也有一定门槛。

  3. 用户登陆后,可以选择给帐号加上密码,但不是必须。可以根据用户的使用情况,采集用户在帐户里使用的服务种类、数量和时间,向用户推荐加上密码保护。或者建议用户不要加密码。

  4. 在用户不采用密码保护期间,收集用户登陆的资料,例如 ip 地址和登陆时间。对异常登陆做一些猜测。并结合用户帐号的安全性需求,定期发 email 通知用户。或是定期向用户 email 发送帐号登陆记录(以不骚扰用户的频率),比如长期没有使用服务,某天登陆了,就发一封 email 通知用户。

Comments

使用OpenID。。。

用户名被人知道无所谓,邮箱和qq被人知道真的还不好,经常被人乱度发东东

没有账号,岂不是要求所有的用户密码都不一样,昏,输错密码还有可能进入别人账户
证书不就没账号吗,这玩意不用介质谁能记住

其实各种各样的Single sign-on系统就是要解决这个问题。

要密码或者验证码

从某个角度是防止恶意注册

防止网站服务器负荷过重。等等

是有它的存在的原因

只记得从前在学校时那上机的号子可以不要密码,后来从没有有过

强烈支持取消留言要密码认证功能——这个问题我在今年单位的新栏目上线前也提到过,确实有些栏目是没有必要设这个坎的。

可以把注册帐号分成两类,一类是guest的,一类是normal的。guset只需要输入个邮箱就可以体验,normal的就需要设置个密码。guest体验过程中可以随时申请设置密码转成normal用户。跟unix帐户管理差不多的思路

更要顺应中国国情,让用户的心理觉的安全同时又要让用户操作起来爽快,要走两个极端,要嘛象GOOGLE那样,搜索是不需要注册的,或者像QQ那样聊天是要注册的!呵呵!

需要密码,要不我可以编写一个程序,在你的留言中做广告!

我觉的应该加入对用户行为进行风险评估,然后强行或推荐或偶尔提醒,比如支付宝要付款,那要强行设密码并验证密码复杂性,如果登录支付宝就更松的设置密码,如果密码太简单了就推荐或提醒下修改而已,比如查询支付宝余额,那就没必要设密码!

@CC:
这个和我想的一样,特别是外国网站,那验证码经常8个以上字母还很难看清,国内的CSDN也一样,有时候很难看清验证码,真不知道他们怎么设计的

鲁迅说中国有2个时代.呵呵

最S.B的设计是登录界面的验证码.奇怪得很,很多验证码不花半天是看不懂的,流行是么?

如果为了防止爆破密码,可以第三次输错密码甚至第一次输错密码后再来验证码啊. 再假一点, 甚至可以将提交信息的时间间隔设置为3s以上, 服务器可以判定是否是攻击行为, 当然如果觉得麻烦不如直接输错1次,2次,3次或4次之后再弹出验证码.

总之验证码很S.B. 但比验证码更S.B的是拥护它的它们.

ding

email 被骚扰仅仅是因为它被机器人收集 spam 攻击

(鉴于中国国情,另兼容输入 QQ 号也可以)
这句话,我看到的只是讽刺!!

3r3

那样会不会出现大量伪造留言?

同意8楼的说法
另外,有些想法总是在闭门造车

使用更“松”的名字,我想很多场合也是合适的

使用更“松”的名字,我想很多场合也是合适的

互联网的用户习惯早已被养成,输入帐号密码不是门槛,相反不输入密码更会让用户莫名其妙,属于画蛇添足之举。

业余人士路过....
偶在所有需要注册但又不经常使用并保证帐号安全的BBS和网站都用一个ID,密码虽然有一部分都不一样,但是根据网站域名和其他网站信息设置了一个密码生成<b>规则</b>,比如5d6d.com,域名第二个字符是d,字符总数是4:d=dog,4=april?...虽然有点麻烦,但是总比密码被盗和忘记密码强...这样,需要记忆的不是密码,是密码规则...当然要是遇到变态的网站域名,比如http://3.141592653589793238462643383279502884197169399375105820974944592.com,那就只能弄个例外了...

还记得去年火过一阵的mybrute.com么?它就是类似思路

个人觉得安全隐患有很大问题,存在试探输入QQ号和邮箱号的可能.

如果是不显示Email到还安全,用昵称选项作为别人认识你的标记就好,这点刚才想漏了。

但如果是邮箱作为标识,被暴露在各大网站论坛上,恐怕是大家都不愿意的。感觉被自然人看见远比垃圾邮件危险的多~~~

最后,安全基于邮箱验证的。考虑邮箱安全。假如邮箱被盗,在以前就换一个好了,现在呢,你的所有该邮箱登录的网站论坛博客通通面临危险。还有,如果用户停用原有邮箱,换其他的呢。(还好,邮箱一般情况还是安全的,选个不太会倒的公司的^_^)


email 只是用户名,并不展现给其他用户。

且 email 被骚扰仅仅是因为它被机器人收集 spam 攻击。被一个自然人看到并无所谓。你担心你的 email 被一个自然人看见,给你发邮件讨论问题或交朋友吗?

把 email 交给一个服务提供的网站当然要对这个网站要有一定的信任,这个信任不必强于在这个网站上输入你常用的密码。

用户名被人知道无所谓,邮箱或者qq被人知道要看人愿不愿意,这两个都很容易被骚扰。

在研究 Information Card 时,我也考虑过这事。个人的 Information Card 可以自己给自己颁发,然后交给网站认证。自己的 Information Card 不能随意公开或复制。

如果使用更“松”的名字,我想很多场合也是合适的。但这个更“松”的名字也许不是用户名(Email)或密码,而是位于二者之间的一个非公开的概念?

Post a comment

非这个主题相关的留言请到:留言本