39

Cookie の保護: HttpOnlyのページでは、なぜ HttpOnly Cookie を作成することが良い考えなのかを説明しています。

Ruby on Rails でこのプロパティを設定するにはどうすればよいですか?

4

5 に答える 5

38

Cookie の設定に使用されるハッシュに「http_only」オプションを設定します

例えば

cookies["user_name"] = { :value => "david", :httponly => true }

または、Rails 2 の場合:

例えば

cookies["user_name"] = { :value => "david", :http_only => true }

于 2008-09-16T14:04:18.010 に答える
12

ローリーの答え:

ある時点で、オプションの名前が:http_onlyから(アンダースコアなし)に変更されたことに注意してください。:httponly

actionpack 3.0.0、つまりRuby on Rails 3では、へのすべての参照:http_onlyがなくなりました。

それはしばらくの間私を投げました。

于 2010-12-17T11:42:53.693 に答える
7

changelogで説明されているように、:http_only を true に設定するだけです。

于 2008-09-16T13:39:53.763 に答える
4

この行を含む 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 です。

于 2016-11-07T21:13:31.320 に答える
1

また、Rails 2.2に含まれているパッチを作成しました。これは、デフォルトでCookieStoreセッションをhttp_onlyに設定します。

残念ながら、セッションCookieはデフォルトで通常のCookieのままです。

于 2008-10-03T18:49:19.733 に答える