ホームページ >バックエンド開発 >PHPチュートリアル >フロントエンドとバックエンドの両方で簡単なフィルタリングが行われていますか?

フロントエンドとバックエンドの両方で簡単なフィルタリングが行われていますか?

WBOY
WBOYオリジナル
2016-07-06 13:52:161497ブラウズ

たとえば、長さと型がフロントエンドで行われた場合、バックエンドでそれらを検証する必要がありますか?

返信内容:

たとえば、長さと型がフロントエンドで行われた場合、バックエンドでそれらを検証する必要がありますか?

フロントエンドで実行すると、ユーザー エクスペリエンスが向上し、コンテンツが違法な場合に不要なネットワーク オーバーヘッドが削減されますが、バックエンドで実行することのみがセキュリティと信頼性を確保するのに最も重要です。一歩下がってみると、フロントエンドを行う必要はありませんが、バックエンドも行う必要があります。

ユーザー入力を決して信用しないでください。
特に、バックエンドはデータベースと対話するときにフィルターする必要があります。

私が Web 開発に触れて以来、専門家から最も言われたことは “永远不要相信用户的输入” だからバックエンド検証は避けられない

バックエンドは実行する必要がありますが、フロントエンドは実行する必要はありませんが、ユーザーエクスペリエンスのために、フロントエンドは依然としていくつかのフィルタリングを実行する必要があります

バックエンド プログラムは、フロントエンド ユーザーによって入力されたデータを決して信頼してはなりません
SQL インジェクションと保存された XSS はすべてこの方法で生成されます
バックエンドは、フロントエンドによって渡されたデータをフィルターして制限してから処理する必要がありますビジネスロジックを作成してデータベースに保存します

フロントエンド フィルタリングはユーザー エクスペリエンスを向上させるために必要ですが、バックエンド フィルタリングは必要ありません。

フロントエンドのフィルタリングはユーザーフレンドリーであり、間違って入力した場合にユーザーに知らせます。

バックグラウンド フィルタリングはセキュリティを強化するためのものです。ハッカーがどのようなデータを詰め込むかは誰にもわかりません。

訪問する人がすべて善良なユーザーであるとは思わないでください。彼らはあなたのデータチェックがフロントエンドのみで行われ、バックエンドがいつ攻撃されるかはわかりません。すべてのサーバーをダウンさせます。

実際、サーバーの負荷が高く、ユーザー エクスペリエンスが低下することを恐れない場合は、フロントエンドで行う必要はありませんが、バックエンドで行う必要があります。

バックエンドはプログラムロジックとデータセキュリティのために行われます

フロントエンドはユーザーエクスペリエンスを向上させるために行われます

バックエンドは行われる必要がありますが、フロントエンドは行われる必要はありません

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。