2011-01-01から1年間の記事一覧
前回の日記で「クライアントに的確なエラーメッセージを返すため、文字種のチェックと文字数のチェックは分けて行うべきかもしれない」と書いた。このうち、文字数のチェックは簡単である。文字数をカウントし、許容文字数を超えていないかどうか調べるだけ…
制御文字は不許可にすべき 前回の日記で「単なる書式チェック(文字種や長さなどのチェック)なので、アプリの要件にしたがって粛々と行えばよい」と書いた「(c)パラメータ文字列の妥当性検証」であるが、実は考えるべきことがそれなりにある。アプリの要件…
今回はRuby製Webアプリでの入力チェック手順について考えてみる。Ruby1.9を使い、Railsなどのフレームワークは使わない前提だ。 文字エンコーディングの妥当性検証こそが重要 徳丸浩さんの『体系的に学ぶ 安全なWebアプリケーションの作り方』には「入力処理…
$ ruby -v ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux] $ gem list | grep rack rack (1.3.0)という環境で: require 'rack' class MyApp def call(env) [200, {"Content-Type" => "text/plain"}, [Rack::Request.new(env)['hoge'].encoding…
ご無沙汰しております。artonさんの「RESTとCSRF」を読んで僕なりに考えたことを書きます。お題: 所定の遷移に従っていないクライアントには破壊的な操作をさせたくない 破壊許可識別子をリクエストボディに含めたくない artonさんの解は下記の通り「破壊許…
どんなbotか カラオケって、歌いたい曲が配信されてなかったりしますよね。そのモヤモヤを救済するために、JOYSOUNDという超最高なカラオケ配信サービスが、配信リクエストを受け付けてくれています。リアルタイムリクエストです。投票で毎月200位までに入っ…