Cookie の保護: HttpOnlyのページでは、なぜ HttpOnly Cookie を作成することが良い考えなのかを説明しています。
Ruby on Rails でこのプロパティを設定するにはどうすればよいですか?
Cookie の保護: HttpOnlyのページでは、なぜ HttpOnly Cookie を作成することが良い考えなのかを説明しています。
Ruby on Rails でこのプロパティを設定するにはどうすればよいですか?
Cookie の設定に使用されるハッシュに「http_only」オプションを設定します
例えば
cookies["user_name"] = { :value => "david", :httponly => true }
または、Rails 2 の場合:
例えば
cookies["user_name"] = { :value => "david", :http_only => true }
ローリーの答え:
ある時点で、オプションの名前が:http_only
から(アンダースコアなし)に変更されたことに注意してください。:httponly
actionpack 3.0.0、つまりRuby on Rails 3では、へのすべての参照:http_only
がなくなりました。
それはしばらくの間私を投げました。
changelogで説明されているように、:http_only を true に設定するだけです。
この行を含む config/session_store.rb というファイルがある場合 (Rails 3 以降)、既に自動的に設定されています。
config/initializers/session_store.rb
:
# Be sure to restart your server when you modify this file.
Rails.application.config.session_store :cookie_store, key: "_my_application_session"
また、レールでは次のキーを設定できます。
:expires -この Cookie の有効期限が切れる時刻 (Time オブジェクト)。
:secure -この Cookie が HTTPS サーバーにのみ送信されるかどうか。デフォルトは false です。
また、Rails 2.2に含まれているパッチを作成しました。これは、デフォルトでCookieStoreセッションをhttp_onlyに設定します。
残念ながら、セッションCookieはデフォルトで通常のCookieのままです。