zoukankan      html  css  js  c++  java
  • 一个不用password的用户系统

    非常多年前云风设想过这样一个用户系统《为什么一定要有password?》,我是挺赞同的。对我来说,用户系统是一个责任重大的东西。可惜非常多国内厂商都不把这当回事。

    之前做过一些小东西,基本上都是採用第三方登录的方式。比方用google账号登录。这样就把用户管理的麻烦事交给第三方去处理了,相信google这种大厂能做得更好。

    然而总会有须要自己管理用户的时候,尽管能够採用各种安全的措施去保护这些用户数据,比方用更安全的password散列算法什么的,但不妨不要有password,没有password就无从泄露了。

    之所以有这种想法,是站在用户的角度:你可能认为你的产品非常重要。希望用户用更强的password来保护他们在你产品中的数据,但从用户的角度上来说,他们的隐私比你的破产品重要得多,根本不想把重要的password用在你的产品上,谁知道你的产品会不会被脱库然后成为社工数据的一部分,用一个低安全性的通用password跟没有password的安全性是一样的,甚至更差,那不如索性不要password。

    可是password又必须是一个可选项,毕竟还是会有人认为他们在你产品的数据也有点重要,可是又不想用跟别的地方一样的password——毕竟还是有非常多人不会去用password管理工具的。我想到的一个办法就是OTP(一次性password)。比方 Google Authenticator 这种现成的TOTP工具。

    基本流程是这样:

    用户使用email登录。假设是新用户。就用这个email注冊,用户注冊完即能够使用。

    那么想设置password怎么办?注冊时会有提示,假设要设置password请查收邮件。

    邮件的内容就是下面几个东西:

    设置password的链接,Google Authenticator二维码。Android/iOS版的Google Authenticator安装链接加上设置说明。

    设置方法:

    下载安装Google Authenticator。扫描二维码加入账号,在设置password的页面里输入刚才扫出来的Google Authenticator账号的一次性password就可以完毕password设置。


    设置好password以后再次登录就须要在输入完email之后输入Google Authenticator产生的一次性password。

    丢失Google Authenticator以后重置password也非常easy。仅仅要又一次生成一个二维码并重发邮件就可以。

    至于用户假设用了网易之类不安全的邮箱那就没办法了。

    当然眼下仅仅是一个设想,抽出时间写个DEMO试试。


  • 相关阅读:
    嵌入式系统WinCE下应用程序GUI界面开发【转】
    pidstat 命令详解
    shell脚本检查是否存在tun0虚拟网卡,若不不存在服务器更改port,并重启服务器,客户端修改port,并重新启动客户端
    阿里云k8s部署zookeeper集群
    Kubernetes StatefulSet
    dubbo-admin管理平台搭建
    k8s pv,pvc无法删除问题
    Linux配置AndroidSDK&Jenkins远程部署
    CentOS的vsftp修改默认配置路径方法
    Java语法糖3:泛型
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/7136761.html
Copyright © 2011-2022 走看看