Domanda

La pagina Proteggere I Cookie:HttpOnly spiega perché fare HttpOnly cookie è una buona idea.

Come faccio a impostare questa proprietà in Ruby on Rails?

È stato utile?

Soluzione

Impostare il 'http_only' opzione di hash utilizzato per impostare un cookie

ad es.

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

o, in Rails 2:

ad es.

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

Altri suggerimenti

Re Laurie risposta:

Si noti che l'opzione è stata rinominata da :http_only per :httponly (senza underscore) a un certo punto.

In actionpack 3.0.0, che è, Ruby on Rails 3, tutti i riferimenti a :http_only se ne sono andati.

Che mi ha buttato per un po'.

Basta impostare :http_only al vero, come descritto nel changelog.

Se hai un file chiamato config/session_store.rb tra cui questa linea (Rails 3+), quindi è automaticamente impostato già.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"

Anche guide consente di configurare le seguenti chiavi:

:scadenza - Il momento in cui il cookie scade, come un Tempo oggetto.

:sicuro - Se questo cookie viene trasmesso solo ai server HTTPS.Il valore predefinito è false.

Ho scritto anche una patch che è incluso in Rails 2.2, che di default è il CookieStore sessione http_only.

Purtroppo i cookie di sessione sono ancora per impostazione predefinita normali cookie.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top