module
ActiveRecord::Encryption::ExtendedDeterministicQueries
v8.1.1 -
Show latest stable
Automatically expand encrypted arguments to support querying both encrypted and unencrypted data
Active Record Encryption supports querying the db using deterministic attributes. For example:
Contact.find_by(email_address: "jorge@hey.com")
The value “jorge@hey.com” will get encrypted automatically to perform the query. But there is a problem while the data is being encrypted. This won’t work. During that time, you need these queries to be:
Contact.find_by(email_address: [ "jorge@hey.com", "<encrypted jorge@hey.com>" ])
This patches ActiveRecord to support this automatically. It addresses both:
-
ActiveRecord::Base - Used in Contact.find_by_email_address(...)
-
ActiveRecord::Relation - Used in Contact.internal.find_by_email_address(...)
This module is included if `config.active_record.encryption.extend_queries` is `true`.
Included modules
- ActiveRecord::Encryption::ExtendedDeterministicQueries::CoreQueries
Files
- activerecord/lib/active_record/encryption/extended_deterministic_queries.rb