V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dLvsYgJ8fiP8TGYU
V2EX  ›  前端开发

“登录界面,先输入用户名,点击下一步,才出现密码输入框” 这种设计是哪家先发明的?有什么用意吗?

  •  1
     
  •   dLvsYgJ8fiP8TGYU · 2023-04-21 14:02:45 +08:00 · 1942 次点击
    这是一个创建于 577 天前的主题,其中的信息可能已经有所发展或是发生改变。

    被一位朋友问到这个问题。

    他说「明明可以同时显示用户名+密码的输入框,现在还要用户多一个点击步骤,不是多此一举吗?而且对于使用密码管理器自动填充的用户也很不友好,要手动触发两次填充。」

    个人觉得这种设计,或许是为了在第一步就检查用户名 /邮箱是否被注册,如果没有注册,就跳转注册界面。但传统的“用户名+密码框同时显示”的设计和这一目的也并不冲突,依然可以通过提示文本引导未注册用户去注册。

    15 条回复    2023-04-21 18:10:11 +08:00
    luzemin
        1
    luzemin  
       2023-04-21 14:04:06 +08:00
    我最早在 Tumblr 见到
    NoOneNoBody
        2
    NoOneNoBody  
       2023-04-21 14:09:14 +08:00
    不是前端开发
    盲猜是需要生成客户端唯一标识,其中用户名是参数之一,在提交密码时一并提交
    0TSH60F7J2rVkg8t
        3
    0TSH60F7J2rVkg8t  
       2023-04-21 14:10:35 +08:00   ❤️ 22
    这个设计我记得最早是在微软邮箱( exchange ?)里看到的,因为账户系统其实是分开的,当输入用户名的时候,并不知道要把密码提交给后端哪个控制域去验证,所以出于安全和其它因素的考虑,做成了两个步骤。比如,当年微软的邮箱是可以有企业自己控制的,那么在这种情况下,如果是直接输入用户名和密码,可能把密码泄露给微软(或者反过来避免把微软的用户密码泄露给第三方企业)。那么登录在验证了邮箱属于谁之后,由设定调用让第三方去验证,避免了多出来的泄露问题。后期看到的就是 iCloud 的云上贵州,在 Apple.com 上输入邮箱后,再到下一个页面才需要输入密码,以便分辨登录用户属于谁,然后再提交密码。其实简单说,我个人认为就是单一入口的一个安全隔离措施。
    zero47
        4
    zero47  
       2023-04-21 14:13:56 +08:00
    吐槽过,但没特意想过这个问题,感谢 OP 的提问。感谢 @ahhui 的回答,下次登录苹果微软不吐槽了
    cpsony
        5
    cpsony  
       2023-04-21 14:17:13 +08:00
    3# 应该是正解,目前很多应用都整合了 IdP ,先输入用户名,判断是 local user 还是 idp user ,再看是跳转还是直接输密码登录
    NoOneNoBody
        6
    NoOneNoBody  
       2023-04-21 14:19:45 +08:00
    @ahhui #3
    这个释疑靠谱
    chengxy
        7
    chengxy  
       2023-04-21 14:58:00 +08:00
    Apple 不就是这样?
    mxT52CRuqR6o5
        8
    mxT52CRuqR6o5  
       2023-04-21 15:02:20 +08:00   ❤️ 2
    还是没有完全理解,就算不分两步也完全可以做到避免「可能把密码泄露给微软」「把微软的用户密码泄露给第三方企业」这种事,登录时先后调两个接口就是了
    loszhang
        9
    loszhang  
       2023-04-21 17:14:27 +08:00
    apple ,google ,微软都有吧
    loszhang
        11
    loszhang  
       2023-04-21 17:21:07 +08:00
    wy315700
        12
    wy315700  
       2023-04-21 17:22:53 +08:00
    @mxT52CRuqR6o5
    有很多使用 saml 协议的。
    判断出来第三方以后需要跳转到第三方的页面进行登录。
    alne
        13
    alne  
       2023-04-21 17:26:57 +08:00
    头次见就是微软
    wangxiaoaer
        14
    wangxiaoaer  
       2023-04-21 17:59:23 +08:00 via iPhone
    会不会有这种可能:用户名和密码如果一起提交,一起校验的时候要对密码做 hash 之类占用资源,分开查询需要查两次数据库。
    sorcerer
        15
    sorcerer  
       2023-04-21 18:10:11 +08:00 via Android
    是挺烦的,尤其是当我用 bitwarden 填写帐号密码时。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3237 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:31 · PVG 20:31 · LAX 04:31 · JFK 07:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.