如何处理带有条件字段的javascript表单中的安全性



我正在用javascript和php(一个wordpress网站(从头开始做我的第一个自定义表单。我正在处理一些安全问题。

我正在做一个条件表单,为了简单起见,我使用css来隐藏和显示字段(但我不知道这是否是处理这个问题的最佳方式(。

我的问题是,如果某个用户打开开发人员工具并更改display的值,它将发送所有字段,甚至是隐藏的字段。

有什么办法解决这个问题吗?

我没有使用插件,因为表单有很多选项,很难维护

谢谢

经验法则是永远不要相信客户端所做的任何事情。换句话说,您永远不应该在客户端上强制执行安全性。您可以进行客户端验证以帮助改善用户体验,比如在用户为字段输入无效值时发出警报。然而,正如您正确观察到的那样,没有什么可以阻止客户端使用开发工具并根据自己的喜好修改值。

我建议进行两个更改:1(如果可能的话,只让客户端从服务器请求必要的字段。这样,你甚至不必在前端有这个条件逻辑。2( 在服务器上彻底验证请求。假设客户端可以向您发送任何请求,并且只接受服务器端的有效表单提交。您只能在客户端执行这么多操作。

出于安全原因,您必须在后端检查所有数据验证。在前端侧,所有数据都可以更改。例如,如果您通过javascript验证数据,用户可以禁用javascript并绕过您的验证。强烈建议不要只在客户端验证数据。您应该在前端和后端对其进行验证。

最新更新