首页 > 解决方案 > while 循环中的提示作为密码输入有多安全?

问题描述

var password = "strong_password";
while (k != password) {
    var k = prompt("Enter password");
    if (k != password) {
        alert("Wrong password!");
    }
}
//Subsequent code or html

在网站加载之前这样的提示有多安全?是否可以“忽略”提示,以便执行后续代码而不在提示中输入内容?

标签: javascriptsecuritypromptpassword-protection

解决方案


这是非常不安全的,因为任何人都可以简单地查看站点(或脚本)的源代码并找出他们需要放入什么prompt来绕过它。

如果您想验证用户是否有权访问某些内容,请在服务器上进行验证,而不是在客户端上进行验证,并且只有在他们通过验证后才向他们发送数据。

prompt由于它的阻塞行为,它对用户也很不友好。

如果他们禁用了 Javascript,用户也将能够看到主要内容。


推荐阅读