javascript - while 循环中的提示作为密码输入有多安全?
问题描述
var password = "strong_password";
while (k != password) {
var k = prompt("Enter password");
if (k != password) {
alert("Wrong password!");
}
}
//Subsequent code or html
在网站加载之前这样的提示有多安全?是否可以“忽略”提示,以便执行后续代码而不在提示中输入内容?
解决方案
这是非常不安全的,因为任何人都可以简单地查看站点(或脚本)的源代码并找出他们需要放入什么prompt
来绕过它。
如果您想验证用户是否有权访问某些内容,请在服务器上进行验证,而不是在客户端上进行验证,并且只有在他们通过验证后才向他们发送数据。
prompt
由于它的阻塞行为,它对用户也很不友好。
如果他们禁用了 Javascript,用户也将能够看到主要内容。
推荐阅读
- rotation - 有或没有最小旋转弧的四元数乘积
- cypress - 我可以在 Cypress.io 上创建自定义错误吗?
- xml - Solr 数据导入 - 非法属性“xpath-default-namespace”
- javascript - 多个 div 的 parentNode 的 EventListener
- r - 如何使用R中的特定列制作相关矩阵
- java - WADL2JAVA Mavaen 插件不生成类
- firebase - 任何人都知道为什么 Firebase 存储上传视频会如此缓慢
- asp.net - asp:超链接不可点击
- spring-boot - 当服务器需要区分大小写的标头时,Spring Cloud 网关无法建立 websocket 连接
- java - 执行“put”时发生异常