ビューでActionViewヘルパーメソッドを使用して出力をサニタイズできることは知ってstrip_tags
いますが、データベースに永続化する前にユーザー入力をサニタイズするための最良の方法は何ですか?コントローラーにビューヘルパーを含めて、strip_tagsメソッドを再利用する方法を見つける必要がありますか?レールには、このようなことを行うために世界中で利用できるものがあると思いました。
3234 次
4 に答える
4
xss_terminateプラグインはどうですか?
于 2009-10-18T07:45:58.810 に答える
0
ジェムをサニタイズするかもしれません: http://wonko.com/post/sanitize
于 2009-10-18T07:50:45.010 に答える
-1
なぜユーザー入力をサニタイズしたいのですか?それも意味がありません!サニタイズの意味はコンテンツを使用しているコンテキストに依存するため、入力ではなく出力をサニタイズ(エスケープ)する必要があります。どのコンテキストでも安全な文字列などはありません。アプリケーションが現在使用しているシナリオで「安全」なデータベース内のマングルされた文字列の束は、明日は別のことをしたいと思うかもしれないので、望ましくありません。プレゼンテーション層が正しいことをしている場合(コンテキストに基づいてコンテンツをエスケープしている場合)、引用符、円記号、またはDROP TABLEステートメントがいくつ含まれていても、問題はありません。
于 2012-05-28T02:28:07.580 に答える
-1
ユーザーの入力をサニタイズする必要があるのはなぜですか?
通常、必要なのは、出力のより大きなブロック内にユーザーの入力を印刷または埋め込むときはいつでも、ユーザーの入力の厳密でコンテキストを意識したエンコード/エスケープだけです。
于 2009-10-18T05:11:19.507 に答える