No se proporciona ninguna opción secreta a Rack:: Session:: Cookie warning?


Estoy ejecutando Rails 3.2.3, Ruby 1.9 bajo Fedora 17. Recibo esta advertencia, cuando corro rails s, y ¿cómo lo arreglo?

ADVERTENCIA DE SEGURIDAD: No se proporciona ninguna opción secreta a Rack::Session::Cookie. Esto supone una amenaza para la seguridad. Se recomienda encarecidamente que proporcionar un secreto para evitar exploits que pueden ser posibles de hecho a mano cookies. Esto no se admitirá en futuras versiones de Rack, y las versiones futuras incluso invalidarán su usuario existente cookies.

Author: Yo Ludke, 2012-04-29

8 answers

Este es un error de Rails, ya que la subclase está violando el contrato de la API de la superclase.

La advertencia puede ser ignorada de forma segura por los usuarios de Rails.

(https://github.com/rack/rack/issues/485#issuecomment-11956708 , sin cursiva en el original)

Confirmación en la discusión del bug de rails: https://github.com/rails/rails/issues/7372#issuecomment-11981397

 84
Author: Austin Lin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-08 04:06:44

Leyendo la discusión basada en la respuesta de tehgeekmeisters, esta advertencia aparece cuando Rails está usando cookies de rack de una manera diferente a la prevista. Debería estar bien simplemente ignorar esta advertencia por ahora hasta que haya un acuerdo final sobre cómo manejar este problema y una solución en su lugar.

 19
Author: iltempo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-07 07:47:20

Este problema se ha solucionado en la versión recién publicada de Rails 3.2.11.

Log: https://github.com/rails/rails/commits/v3.2.11

Commit: https://github.com/rails/rails/commit/95fe9ef945a35f56fa1c3ef356aec4a3b868937c

 17
Author: Henrik N,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-08 20:44:25

rails 3.2.9-ruby 1.9. 3p125 (2012-02-16 revisión 34643) [i686-linux]

Hola a todos, lo siguiente ha funcionado para mí, puede funcionar para usted.


/usr/local/lib/ruby/gems/1.9.1/gems/actionpack-3.2.9/lib/action_dispatch/middleware/session/abstract_store.rb
module Compatibility
          def initialize(app, options = {})
            options[:key]     ||= '_session_id'
            #fixed warning - SECURITY WARNING: No secret option provided to Rack::Session::Cookie.
            options[:secret] ||= Rails.application.config.secret_token
            super
          end
    end
 16
Author: nbit001,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-12 10:52:23

Bajar a rack 1.4.1 debería ser suficiente para resolver esto por ahora. Hay un problema abierto para esto y acabo de enviar un pull request que parece solucionarlo para mí. En cualquier caso, observe el problema, y debería poder actualizar a rack 1.4.2 después de que esto se solucione.

Aparentemente, hay una discusión en curso sobre cómo solucionar esto en otro problema . Tendrá que bajar a 1.4.1, ignorarlo o averiguar su propia solución hasta que esto sea tratado (y backported, si eso sucede).

 6
Author: tehgeekmeister,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-07 08:34:40

Se ha abierto un problema en Github https://github.com/rails/rails/issues/8789 . Parece que un error relacionado con Rails 3.2.10 con Rack 1.4.2 está causando esto. OMI, puede ser ignorado con seguridad hasta que se resuelva el problema.

EDITAR : Este problema se ha resuelto en Rails 3.2.11.

 5
Author: Abhra Basak,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-14 07:12:21

Rails actualizar a 3.2.13 ,puede resolver esta pregunta.

 3
Author: leonyuan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-03-25 02:52:42

Los usuarios de Rails pueden ignorar este mensaje, ya que es un error de Rails.

 1
Author: raggi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-07 15:54:05