停止浏览器开发工具编辑以绕过禁用元素的标准是什么?

What is the standard to stop browser dev tool editing to bypass disabled elements?

我现在遇到过一些情况,浏览器开发工具和任何人自由使用 view/edit/add 的能力似乎都有可能发生一些不希望发生的事情。

例子一... 一个按钮,它有一个事件,触发一个函数,可能 运行 ajax,运行 是一个 php 脚本,可以与您的数据库通信...用户转到dev tools,去掉html的disabled标签,按钮可以自由触发。

例子二... 好的,从示例 1 继续,但是假设程序员只是从 html 中完全删除了按钮,而不是禁用它。如果 "viewable" 源代码 javascript 中已经存在一个函数,任何人都可以查看以找到他们想要的事件触发器,是什么阻止了理解开发工具的用户进入并创建 <button id="whatever">Do Bad Things</button>到,确定它是如何触发的,然后将其与添加的 html 按钮匹配。 (这可能吗,好像有可能,我可能是错的。)

我想我只是好奇是否有一个标准来防止这些类型的事情发生,特别是在用户不希望按钮被完全移除的情况下,他们更希望按钮是可见的,而不是可见的可用。

如果不对此进行保护,代码是否错误?或者是否有必要通过在 php 脚本中添加双重甚至三重检查的逻辑来完全保护自己免受所有方面的影响,以确保事情不会被不需要的措施绕过?我的意思是,我知道用逻辑保护您的 php 是显而易见的,但是是否有可遵循的标准或最佳实践来防止这些类型的情况?

任何信息都可能对您有所帮助。谢谢!

经过更多的研究和这里的回复,我能够确定客户端从来都不是真正安全的。尽管添加保护客户端可能有用,但这并不是真正安全的方法。您还必须 100% 验证服务器端才能受到保护。谢谢

我发现的类似帖子有更多 comments/answers 我可以阅读。

Whosebug1

Whosebug2