2011-01-26 7 views
0

Ruby on Railsアプリケーションでは、X仮想フレームバッファーと他のプログラムを使ってWebから画像を取得しています。xvfb-run --server-args = -screen 0 1024x768x24/my/C++/app#{user_provided_url}Rubyシステムコールを使用しているときにユーザ入力を適切に害する方法は何ですか?

この呼び出しを行うための最良の方法は、ユーザーの入力による最大限の安全性?

+0

Devin - あなたはパンの答えが正しいと言った。あなたは答えとしてそれを受け入れるべきです。 –

答えて

1

おそらく、この入力をレールでサニタイズする必要はありません。 URLであり、文字列形式であれば、既に適切にエスケープされた文字がURLとしてNet :: HTTP呼び出しに渡されます。つまり、URLが有効であることを確認する正規表現を書くことができます。あなたはまた、URLが解析可能であることを確認するために、次の手順を実行できます。

 
uri = URI.parse(user_provided_url) 

それは、関連する部品だためにあなたは、オブジェクトを照会することができます

 
uri.path 
uri.host 
uri.port 
+0

ありがとう、これは私が必要なものです! –

0

たぶん私は間違っているんだけど、なぜ指定された文字列が実際にはURL(URI::parse)であることを確認し、一重引用符で囲み、その中に現れる一重引用符( ')文字をエスケープしますか?

関連する問題