lib/openstax/accounts/sso.rb in openstax_accounts-8.1.0 vs lib/openstax/accounts/sso.rb in openstax_accounts-8.1.1

- old
+ new

@@ -12,11 +12,11 @@ class InvalidSecretsConfiguration < StandardError; end extend self def user_uuid(request) - decrypt(request)['user_uuid'] + (decrypt(request) || {}).dig("user", "uuid") end # https://github.com/rails/rails/blob/4-2-stable/activesupport/lib/active_support/message_encryptor.rb#L90 def decrypt(request) cookie = request.cookies[OpenStax::Accounts.configuration.sso_cookie_name] @@ -38,17 +38,18 @@ def encryptor @encryptor ||= begin key = OpenStax::Accounts.configuration.sso_secret_key raise InvalidSecretsConfiguration, 'Missing sso_secret_key configuration' if key.blank? + cipher = 'aes-256-cbc' salt = OpenStax::Accounts.configuration.sso_secret_salt signed_salt = "signed encrypted #{salt}" key_generator = ActiveSupport::KeyGenerator.new(key, iterations: 1000) secret = key_generator.generate_key(salt)[ - 0, OpenSSL::Cipher.new('aes-256-cbc').key_len + 0, OpenSSL::Cipher.new(cipher).key_len ] sign_secret = key_generator.generate_key(signed_salt) - ActiveSupport::MessageEncryptor.new(secret, sign_secret, serializer: JSON) + ActiveSupport::MessageEncryptor.new(secret, sign_secret, cipher: cipher, serializer: JSON) end end def reset_config @encryptor = nil