gmh*_*mhk 3 javascript java validation client
我从其中一个博客上读过,出于安全考虑,建议在服务器端而不是客户端进行输入数据验证.
从上面的陈述开始,我的思绪开始问1)我在客户端可以用JS做什么样的验证.2)是否有任何规则可以让任何程序员决定在哪里进行验证,无论是在客户端还是在服务器端?
我正在构建基于Java的Web应用程序
您可以在客户端上进行任何类型的验证,但您绝不能依赖该验证.
出于UI目的,由于响应时间更快,因此在客户端上进行验证通常是个好主意.但由于用户始终可以关闭客户端验证(例如,通过关闭JavaScript),因此您必须永远不要依赖它来实际执行并重新验证服务器上的输入.
通常,如果检查对安全性至关重要,请不要在用户可以控制的系统上执行此操作.
那么,当黑客用他们喜欢的一个替换你的javascript,或者只是简单地提交POST和GET时会发生什么呢?
在客户端验证是一个可用性问题.
在USAGE点验证是一个安全问题.
例如,在存储到SQL数据库之前,您可以根据SQL注入验证数据 - 如果您选择一个好的数据库,库将为您执行此操作.当您将数据显示为HTML时,可以根据CSS验证数据.但是如果您将数据公开为XML,RSS或JSON,那么验证就不同了 - 如果您仅在输入时验证它,则不会阻止对其他格式的攻击,并且您的输入例程将与输出相关联您选择的格式.
规则: - 可以轻松规避客户验证.无论客户端验证如何,您都应始终验证服务器上的敏感数据.在客户端验证它们只是改善用户体验的问题.
| 归档时间: |
|
| 查看次数: |
647 次 |
| 最近记录: |