class ActiveRecord::Encryption::Config

Container of configuration options

Attributes

Public Class Methods

# File activerecord/lib/active_record/encryption/config.rb, line 13
def initialize
  set_defaults
end

Public Instance Methods

Configure previous encryption schemes.

config.active_record.encryption.previous = [ { key_provider: MyOldKeyProvider.new } ]
# File activerecord/lib/active_record/encryption/config.rb, line 20
def previous=(previous_schemes_properties)
  previous_schemes_properties.each do |properties|
    add_previous_scheme(**properties)
  end
end
# File activerecord/lib/active_record/encryption/config.rb, line 26
def support_sha1_for_non_deterministic_encryption=(value)
  if value && has_primary_key?
    sha1_key_generator = ActiveRecord::Encryption::KeyGenerator.new(hash_digest_class: OpenSSL::Digest::SHA1)
    sha1_key_provider = ActiveRecord::Encryption::DerivedSecretKeyProvider.new(primary_key, key_generator: sha1_key_generator)
    add_previous_scheme key_provider: sha1_key_provider
  end
end