2010-02-01から1ヶ月間の記事一覧

Railsノート - link_to は安全か?

redirect_to に引き続き、こっちも気になったので調べてみた。link_to は渡された String をサニタイズするか? それとも、それはこちらでやるべきなのか?リファレンスには相変わらず書いてないので、ソースを見る。ググったらわかるようなことだと思うのだ…

Railsノート - redirect_to は安全か?

具体的に言うと、redirect_to に HTTP Header Injection の脆弱性があったりしないか心配になったので調べてみた。HTTP Header Injection についてはこの辺を参照↓ インジェクション系攻撃への防御の鉄則 - 狙われるWebアプリケーション:ITpro Ruby On Rail…

Railsノート - Authlogic を読む (3) - Authlogic::Session::Base

前回act_as_authentic によって Userクラスに include されるモジュールを順番に見ていく計画だったが、予定を変更して今回から Authlogic のセッション(Authlogic::Session::Base)を見ていく。というのも、Authlogic においては認証の対象モデル(User)…

Railsノート - Authlogic を読む (2) - Authlogic::ActsAsAuthentic::Password

前回act_as_authentic によって Userクラスに include されるモジュールをいくつか見ていこう。まずは認証の肝、パスワードのダイジェスト生成と照合のためのコードがある authlogic/acts_as_authentic/password.rb から。 Authlogic::ActsAsAuthentic::Pass…

Railsノート - Authlogic を読む (1) - Authlogic::ActsAsAuthentic

ユーザー認証のためのプラグインとして Authlogic を使うことに決めた。公式のチュートリアルに従いモデルやコントローラを生成、ヘルパー類もコピペして、無事に認証機能の組み込みに成功した。ログイン第一号を自分で飾って感慨無量。参考: binarylogic's …

Railsノート - セッションまわりを読む (2) - セッションの保存/復元のロジック

途中で力尽きたというか、こういうリーディングのやり方は効率に問題があると悟った(笑)ので、後半ぐだぐだですが、やった分だけうpします。 セッション → Cookie セッションが Cookie に保存されるロジックから見た方がわかりやすいと思うのでそっちから…

Railsノート - セッションまわりを読む (1) - セッションの保存/復元のタイミング

Rails のセッションまわりについて調べる。知りたいのは (1) Cookie に含まれている情報からセッション(sessionメソッドの返値となるオブジェクト)を作るところと、その逆に、(2) セッションを Cookie としてレスポンスに含めるところだ。イメージとしては…

Railsノート - ActionController::Request の生成過程を Webサーバーまでさかのぼる

Cookie について調べたときに ActionController::Requestクラスについてちょっと触れたので、今回はこれが new されるところを見てみようと思う。クライアントからの HTTPリクエストがサーバーの 80番ポートに届いて、それが Webサーバーに捌かれてアプリケ…

Railsノート - Cookieまわりを読む (1) -Cookies@ActionController on Rack

前回は Rails とはなんの関係もない Cookie そのもののお勉強だったが、今回からは Rails のコードを追いかけながらやる。Rails 3 旋風が吹き荒れる中、粛々と 2.3.5 のコードを読む。*1AWDR2 をひも解く。(括弧で囲んだ数字は自分で入れた) Rails では、…

Railsノート - Cookieまわりを読む (0) - Cookie@HTTP

最終的に理解したいことは、Authlogic がセッションをどのように管理しているか、なんだけど、Webアプリ開発の初心者として、ここは横着しないで基礎から理解を積み上げていこうと思う。まずは Rails の Cookieまわりのコードを追ってみようと思うわけだが、…