javascript验证是否足以保证我的表单安全?

时间:2013-08-12 23:20:51

标签: php javascript html forms security

我正在建立一个网站,我对登录/注册页面上的表单有疑问。我在登录页面上有一些标准的javascript验证。我的问题是,如果禁用javascript,我应该禁用登录按钮,还是应该在服务器端代码上保留PHP验证?

在安全性方面哪种方法更好?我打算禁用登录/注册按钮,只能通过javascript启用它。这样我就可以避免编写已经存在的相同JavaScript的PHP端验证。这是一种安全的方式吗?

由于

6 个答案:

答案 0 :(得分:11)

总的来说,使用PHP。 Javascript很容易被愚弄和/或完全关闭。此时,您的服务器将获得Malicious最终用户希望您拥有的任何内容,并且您不会阻止它们。

使用PHP进行验证,如果您希望它看起来很花哨,请将javascript置于顶部。但总是服务器端验证。

答案 1 :(得分:2)

作为一般经验法则,任何与安全性或特定用户行为预防相关的内容都不依赖于javascript或CSS来阻止某些内容在页面上发生。由于脚本和css可以在浏览器中被覆盖或禁用,因此如果他们这样做,您将无法抵御该行为。

服务器端是实施预防性安全预防措施的正确位置。

另外,请注意,执行两者对于用户体验非常好,但服务器端是防止不需要的数据通过的唯一确定位置。

答案 2 :(得分:1)

每个客户端验证必须在服务器端进行复制以确保安全性。您的客户端脚本可以很容易地被恶意用户替换,以便完全绕过您的验证,并且可以使用Web调试工具轻松地重新启用按钮。

但是,为了方便用户,有时也希望包括客户端验证。在这种情况下,您必须验证服务器端(PHP)和客户端(Javascript)。

答案 3 :(得分:0)

PHP端验证更好。

答案 4 :(得分:0)

客户端验证不安全,因为它很容易被黑客入侵。仅供用户使用。例如,响应客户端验证,用户可以在提交表单之前修复错误。这样可以节省用户的时间,并且非常感谢您的网站。

安全性验证必须在服务器上进行

答案 5 :(得分:0)

您必须在服务器上验证您的数据并使用Javascript解析它的答案。仅使用Javascript添加/删除HTML内容并创建更好的用户界面。

始终考虑到这一点:如果用户在他/她的浏览器中禁用Javascript会怎样?