diff --git a/actionpack/CHANGELOG.md b/actionpack/CHANGELOG.md index 253b647acab673712c8cc2a071afa5d8f29e6a66..44b8fa843d64c43c4da2a1e8c413f9a03797056b 100644 --- a/actionpack/CHANGELOG.md +++ b/actionpack/CHANGELOG.md @@ -1,8 +1,3 @@ -* Add `config.action_dispatch.cookies_digest` option for setting custom - digest. The default remains the same - 'SHA1'. - - *Łukasz Strzałkowski* - * Extract source code for the entire exception stack trace for better debugging and diagnosis. diff --git a/actionpack/lib/action_dispatch/middleware/cookies.rb b/actionpack/lib/action_dispatch/middleware/cookies.rb index 55bb9de17340ab01e81149dbf63ff8479735583e..ac9e5effe28a423cef3dce151d6c5fd6078b95ce 100644 --- a/actionpack/lib/action_dispatch/middleware/cookies.rb +++ b/actionpack/lib/action_dispatch/middleware/cookies.rb @@ -90,7 +90,6 @@ class Cookies SECRET_TOKEN = "action_dispatch.secret_token".freeze SECRET_KEY_BASE = "action_dispatch.secret_key_base".freeze COOKIES_SERIALIZER = "action_dispatch.cookies_serializer".freeze - COOKIES_DIGEST = "action_dispatch.cookies_digest".freeze # Cookies can typically store 4096 bytes. MAX_COOKIE_SIZE = 4096 @@ -213,8 +212,7 @@ def self.options_for_env(env) #:nodoc: secret_token: env[SECRET_TOKEN], secret_key_base: env[SECRET_KEY_BASE], upgrade_legacy_signed_cookies: env[SECRET_TOKEN].present? && env[SECRET_KEY_BASE].present?, - serializer: env[COOKIES_SERIALIZER], - digest: env[COOKIES_DIGEST] + serializer: env[COOKIES_SERIALIZER] } end @@ -443,10 +441,6 @@ def serializer serializer end end - - def digest - @options[:digest] || 'SHA1' - end end class SignedCookieJar #:nodoc: @@ -457,7 +451,7 @@ def initialize(parent_jar, key_generator, options = {}) @parent_jar = parent_jar @options = options secret = key_generator.generate_key(@options[:signed_cookie_salt]) - @verifier = ActiveSupport::MessageVerifier.new(secret, digest: digest, serializer: NullSerializer) + @verifier = ActiveSupport::MessageVerifier.new(secret, serializer: NullSerializer) end def [](name) diff --git a/actionpack/test/dispatch/cookies_test.rb b/actionpack/test/dispatch/cookies_test.rb index 744143fc2cb9a49fd4d4307f39c9577af8c7c038..0f145666d150887fba83ec8ebd64ccb5707e0ef7 100644 --- a/actionpack/test/dispatch/cookies_test.rb +++ b/actionpack/test/dispatch/cookies_test.rb @@ -369,23 +369,6 @@ def test_read_permanent_cookie assert_equal 'Jamie', @controller.send(:cookies).permanent[:user_name] end - def test_signed_cookie_using_default_digest - get :set_signed_cookie - cookies = @controller.send :cookies - assert_not_equal 45, cookies[:user_id] - assert_equal 45, cookies.signed[:user_id] - assert_equal 'SHA1', cookies.signed.instance_variable_get(:"@verifier").instance_variable_get(:"@digest") - end - - def test_signed_cookie_using_custom_digest - @request.env["action_dispatch.cookies_digest"] = 'SHA256' - get :set_signed_cookie - cookies = @controller.send :cookies - assert_not_equal 45, cookies[:user_id] - assert_equal 45, cookies.signed[:user_id] - assert_equal 'SHA256', cookies.signed.instance_variable_get(:"@verifier").instance_variable_get(:"@digest") - end - def test_signed_cookie_using_default_serializer get :set_signed_cookie cookies = @controller.send :cookies diff --git a/railties/CHANGELOG.md b/railties/CHANGELOG.md index 95693f958b4b3fa2d2583737dcb1641c5a7dddb1..1ccdfb6589e2ccbc57cb3dad4e4fcb46e1d6eccc 100644 --- a/railties/CHANGELOG.md +++ b/railties/CHANGELOG.md @@ -1,9 +1,3 @@ -* The `Rails.application.message_verifier` now returns ActiveSupport::MessageVerifier - preconfigured with `:digest` and `:serializer` values set to `config.action_dispatch.cookies_digest` - and `config.action_dispatch.cookies_serializer` accordingly. - - *Łukasz Strzałkowski* - * Add `after_bundle` callbacks in Rails templates. Useful for allowing the generated binstubs to be added to version control. diff --git a/railties/lib/rails/application.rb b/railties/lib/rails/application.rb index 16bea413b5cbc31f92ba1c9c8f5b332d4725f9e7..61639be7c6ae96015cb7a368451ad16235e96fd1 100644 --- a/railties/lib/rails/application.rb +++ b/railties/lib/rails/application.rb @@ -200,7 +200,7 @@ def key_generator def message_verifier(verifier_name) @message_verifiers[verifier_name] ||= begin secret = key_generator.generate_key(verifier_name.to_s) - ActiveSupport::MessageVerifier.new(secret, digest: config.action_dispatch.cookies_digest, serializer: config.action_dispatch.cookies_serializer) + ActiveSupport::MessageVerifier.new(secret) end end @@ -257,7 +257,6 @@ def env_config "action_dispatch.encrypted_cookie_salt" => config.action_dispatch.encrypted_cookie_salt, "action_dispatch.encrypted_signed_cookie_salt" => config.action_dispatch.encrypted_signed_cookie_salt, "action_dispatch.cookies_serializer" => config.action_dispatch.cookies_serializer - "action_dispatch.cookies_digest" => config.action_dispatch.cookies_digest }) end end