「SafeERBプラグイン」の編集履歴(バックアップ)一覧に戻る

SafeERBプラグイン - (2008/10/09 (木) 09:12:53) のソース

**プラグイン名
SafeERBプラグイン

**このプラグインができること
+ERBテンプレートで、<%= ar.hoge %>など、DBや入力パラメータ由来の文字に対して、サニタイズを忘れていたときに例外を出してくれる


**ちょー簡単な使い方
>./script/plugin install http://safe-erb.rubyforge.org/svn/plugins/safe_erb
これだけ。簡単。

**公式ページ
-[[Safe ERB in Ruby on Rails>>http://wiki.rubyonrails.com/rails/pages/Safe+ERB]]

**日本語解説ページ
-ないねぇ。を、[[Ruby札幌の資料>>http://ruby-sapporo.org/events/rsn/6/]]があったか。

**外国語解説ページ
-[[SafeErb for Rails 2>>http://www.rorsecurity.info/2008/01/06/safeerb-for-rails-2/]]

**のうはう
-例外を出すかどうかはtaintという機能(? フラグ?)を使っている
-DBや入力パラメータ由来の文字はtaint状態になっていて、手動でコレを解除するにはstring.untaintとすればよい
-SafeERBプラグインではERB::Util#h(<%=h ar.hoge %>みたいなやつ)とActionView::Helpers::TextHelper#strip_tags(<%= ar.hoge.strip_tags %>みたいなやつ)を拡張しているので、これを使ったときには自動的にuntaintが呼ばれるので例外が発生しない


**コメント
#pcomment(reply)