ユーザーが編集したテキストエリアからのデータを管理するソリューションを研究しています。ユーザーがいくつかの基本的な HTML タグ (リンク、ボールド、リストなど) を追加できるようにする必要があります。私の大きな懸念は、セキュリティについてです。データは mySql db に保存されます。
セキュリティ上の問題をできるだけ回避するためのアドバイスはありますか? この種のテキストをデータベースに保存する最良の方法は何ですか?
ありがとうございました
ユーザーが編集したテキストエリアからのデータを管理するソリューションを研究しています。ユーザーがいくつかの基本的な HTML タグ (リンク、ボールド、リストなど) を追加できるようにする必要があります。私の大きな懸念は、セキュリティについてです。データは mySql db に保存されます。
セキュリティ上の問題をできるだけ回避するためのアドバイスはありますか? この種のテキストをデータベースに保存する最良の方法は何ですか?
ありがとうございました
これを解決する最善の方法は、許可されたタグのホワイトリストを作成することです。JavaScript を使用すると、無効なデータを入力していることをユーザーに警告できますが、サーバー側でデータを保護するには、コンテンツからデータを取り除く必要があります。たとえば、スクリプト タグは注意して処理する必要があります。ユーザーがそれらを入力し、他のユーザーがそれを表示できるようにする場合は、さらに複雑な処理が必要です。
きちんとした解決策は、ホワイト リストにあるすべてのタグをエスケープし、その他のタグを文字としてエンコードして、<script>
タグが になるようにすること<script>
です。そうすれば、それを html に出力すると、有効なタグとしてではなく、互いに配置された文字として表示されます。
あなた自身の言語のためのより具体的な解決策が必要な場合は、さらに詳細を提供してください。ただし、これはグローバルな概念としては十分です.