在我的注册页面中,我使用JavaScript和PHP进行验证。
但是,人们可以通过查看网页来源来查看我的JavaScript验证功能。它包含输入字段名称,ID等。
那么,任何人都可以看到它们是否安全?
答案 0 :(得分:6)
你引用的验证功能并没有透露任何你需要保密的信息(恰恰相反,实际上,告诉人们什么是必需的和不需要的是有用的,并且可以进入UI)。所以他们“安全”,因为他们没有透露任何保密信息。
如果您的验证功能使用了您想要保密的信息或技术,则需要将它们移动到服务器,因为它们不会“安全”,因为它们会泄露机密信息。 / p>
您可以通过使用积极的minifier /混淆器(例如高级模式下的Google Closure Compiler)来让人们了解客户端验证功能更难。但是你不能让它变得不可能:如果浏览器可以读取代码,那么使用浏览器的人就可以阅读代码。
仅仅因为我们讨论的是客户端验证,通常的警告:即使您正在验证客户端,您仍然需要验证服务器端。用户可以绕过客户端代码并发送无效信息。
答案 1 :(得分:2)
这是安全的,因为您的代码反映了您网页上的操作。在代码上定义最大长度时,可以通过提供一些UI和消息向用户显示该长度。这里没有任何秘密,所以没关系。
此外,当您从开发转向制作时,您应该考虑使用minifying和obfuscating您的javascript代码来隐藏您的敏感代码,使其免于祈祷。这样您就可以节省带宽,并为您的应用程序添加额外的安全层。
答案 2 :(得分:1)
JavaScript验证部分实际上并不是一个安全问题,因为用户无法修改或滥用任何内容,如果它们通过了它,但它是PHP验证,你应该小心,如果被攻陷,可以允许用户访问您的数据库(如果您的表单当然与您的数据库链接)。
答案 3 :(得分:1)
Javascript验证适用于客户端。如果有人禁用了他的浏览器Javascript。它将不起作用。而且在显示javascript验证时没有太多的安全问题。总是进行服务器端验证以避免任何类型的错误后果或安全措施。简单
Java脚本<<客户端验证
PHP<<服务器端验证。