Top > 開発ガイド > コンポーネント開発逆引きリファレンス > TinyMCEで入力されたデータを出力する

TinyMCEで入力されたデータを出力する

対象バージョン

当ドキュメントはRubricks-0.6.x向けです。

概要

TinyMCEで記述された文字列は通常のHTML文字列としてサーバにポストされるため、XSSなどのトラップを仕掛けることが出来てしまいます。

RubricksではCustum Sanitizerを用いてこの問題を解決しています。

Custum Sanitizerとは

Custum Sanitizerはホワイトリスト形式でサニタイジングを行うRubyライブラリであり、Rubricksのサブプロジェクトとして開発されています。

ホワイトリストとはその名の通りブラックリストの逆であり、表示してもかまわない形式の文字列が精査された上で登録されています。 例えば、<script>~</script>という文字列はホワイトリストに登録されていないため、文字列の表示自体が一切実施されません。

Rubricksからは、TinyMCEで正当に利用されるタグだけが表示されるように構成されたホワイトリスト群が提供されています。

使い方

Custum Sanitizerは下記のように利用します。

<%= cs(news.article, {:rule => :tiny_mce}) %>

メソッドcsを用います。
パラメータ「:rule => :tiny_mce」で指定することでTinyMCE用のホワイトリストが適用されます。 TinyMCEで入力された情報を表示する場合には原則的に全ての箇所にcsメソッドを記述してください。

関連項目