2008-09-16 13 views

Respuesta

29

Configure la opción 'http_only' en el hash utilizado para establecer una cookie

por ejemplo,

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

o, en los carriles 2:

por ejemplo

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

+7

Heads up - in rails 3 ': la opción http_only' se renombró a': httponly' – WTK

6

Acaba de configurar: http_only a true como se describe en el changelog.

1

También escribí un parche que se incluye en Rails 2.2, que predetermina la sesión de CookieStore para ser http_only.

Desafortunadamente las cookies de sesión siguen siendo por defecto las cookies normales.

11

respuesta de Laurie Re:

Tenga en cuenta que la opción fue renombrado :http_only-:httponly (sin guión) en algún momento.

En actionpack 3.0.0, es decir, Ruby on Rails 3, todas las referencias a :http_only han desaparecido.

Eso me tiró por un tiempo.

2

Si tiene un archivo llamado config/session_store.rb que incluye esta línea (Rails 3+), entonces ya está configurado automáticamente. 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" 

carriles también le permite configurar las teclas siguientes:

: expira-El momento en que expira esta cookie, como un objeto Time.

: asegurar-si esta cookie sólo se transmite a HTTPS. El valor predeterminado es falso.