私はプロジェクトに取り組んでおり、データベースに挿入する前にユーザーが入力したすべての入力を検証するためにjavascriptを使用しようとしています。
ユーザー入力の検証をJavascriptに完全に依存できますか?
私はプロジェクトに取り組んでおり、データベースに挿入する前にユーザーが入力したすべての入力を検証するためにjavascriptを使用しようとしています。
ユーザー入力の検証をJavascriptに完全に依存できますか?
いいえ; してはいけません。
攻撃者は Javascript を無効にすることができます。
攻撃者は生の HTTP リクエストを送信することもできるため、そもそも Javascript が関与することはありません。
この質問が出されてから 3 年が経ちましたが、回答を追加したいと思います。すべての回答は、検証用の Javascript がクライアントで実行されていることを前提としています (これはおそらく当時もそうでした)。
現在、Javascript はサーバーで使用される言語でもあります。そしてその場合、それは完全にOKです。攻撃者はその部分を無効にすることはできません。
ただし、他の回答で取り上げられている主なポイントは引き続き有効です。クライアント側でのみデータ検証に依存することは許可されません。
.
JavaScript はおろか、ブラウザを使わなくても、誰でもサーバーにリクエストを送信できます。javascript に依存することはできません。