2012-04-30 7 views
0

Javaでサーバー側の検証の必要性とシナリオを説明することができます。なぜ私たちはjavascriptを使用してクライアント側で検証を使用できないのですか?Javaでのサーバー側の検証

+0

別のSOの質問を見てください:http://stackoverflow.com/questions/162159/javascript-client-side-vs-server-side-validation – CyprUS

答えて

5

攻撃者はJavaScriptを無効にするか、外部ツール(またはなど)を使用してサーバーを呼び出すだけで、クライアント側の検証をバイパスできます。最後に、のようなツールを使用して、事実上何かを提出することができます。

また、ユーザーがフォームを送信しようとするたびにページをリロードする必要がなくなり、ネットワークトラフィックとサーバーの負荷が軽減されるため、GUIのレスポンスが向上します。

1

主にセキュリティ上の理由からです。どういうわけか、あなたのクライアントを変更して検証をバイパスできない人がいると、あなたのサーバーを深刻に侵害する可能性があります。

2

クライアント側の検証は、エラーが発生した場合には、HTTP要求を送信する必要はありません。

たとえば、ユーザー名が3文字以上で、ユーザーが2を入力すると、問題があることをユーザーに直ちに伝えることができます。

サーバー側の検証不正な/悪意のある要求(不正なユーザーによって送信される可能性があります)からサーバーを保護します。

たとえば、ユーザーがSQLインジェクションを使用してはならないクエリを実行しようとすると、Webサイト経由ではなく別のクライアントからクエリを送信する可能性があるため、 。

関連する問題