强制使用javascript时是否需要服务器端验证?
我知道用户可以禁用Javascript 我正在开发一个web应用程序,每当用户提交表单(以及客户端验证)时,都会使用javascript修改一个隐藏字段,并在服务器端进行检查,以查看用户是否禁用了js。如果禁用js,则会通知用户启用javascript强制使用javascript时是否需要服务器端验证?,javascript,validation,web-applications,client-side,user-input,Javascript,Validation,Web Applications,Client Side,User Input,我知道用户可以禁用Javascript 我正在开发一个web应用程序,每当用户提交表单(以及客户端验证)时,都会使用javascript修改一个隐藏字段,并在服务器端进行检查,以查看用户是否禁用了js。如果禁用js,则会通知用户启用javascript 我是否需要在服务器端再次验证输入?(如果是,为什么?) 在这种情况下,有没有办法绕过客户端验证 类似地,对于基于ajax的登录,我们是否需要在服务器端再次检查用户凭据 您不应该信任任何客户端输入,并且始终在服务器上进行验证。 客户端验证只是为了方
您不应该信任任何客户端输入,并且始终在服务器上进行验证。
客户端验证只是为了方便用户。您不应该信任任何客户端输入,而应该始终在服务器上进行验证。
客户端验证只是为了方便用户 我是否需要在服务器端再次验证输入 对。不要偷懒。甚至不能保证请求来自浏览器,更不用说启用了JavaScript的浏览器了。浏览器并不是发出HTTP请求的唯一方式,HTTP服务器——顾名思义——服务于HTTP客户端,而不仅仅是浏览器。验证的存在是为了保护您、您的系统、您宝贵的数据以及系统的其他用户。依赖客户端验证假定客户端是合作的、非恶意的,但验证的全部目的是提供保护,使其免受不合作或恶意客户端的攻击 在这种情况下,有没有办法绕过客户端验证 当然。请求可以“手动”构造,使服务器误以为隐藏字段是用JavaScript操纵的,从而误以为启用了JS。隐藏字段对安全没有任何作用 我是否需要在服务器端再次验证输入 对。不要偷懒。甚至不能保证请求来自浏览器,更不用说启用了JavaScript的浏览器了。浏览器并不是发出HTTP请求的唯一方式,HTTP服务器——顾名思义——服务于HTTP客户端,而不仅仅是浏览器。验证的存在是为了保护您、您的系统、您宝贵的数据以及系统的其他用户。依赖客户端验证假定客户端是合作的、非恶意的,但验证的全部目的是提供保护,使其免受不合作或恶意客户端的攻击 在这种情况下,有没有办法绕过客户端验证
当然。请求可以“手动”构造,使服务器误以为隐藏字段是用JavaScript操纵的,从而误以为启用了JS。隐藏字段对安全没有任何作用 您需要在服务器端再次验证输入。不要相信客户的任何意见。因为他们可以在没有你表格的情况下发布任何数据
客户端验证只针对用户体验。您需要在服务器端再次验证输入。不要相信客户的任何意见。因为他们可以在没有你表格的情况下发布任何数据 客户端验证只针对用户体验