aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/messages
Commit message (Collapse)AuthorAgeFilesLines
* Allow `on_rotation` in MessageEncryptor to be passed in constructor:Edouard CHIN2019-06-061-4/+5
| | | | | | | | | | | | | | | | | | | | | - Use case: I'm writing a wrapper around MessageEncryptor to make things easier to rotate a secret in our app. It works something like ```ruby crypt = RotatableSecret.new(['old_secret', 'new_secret']) crypt.decrypt_and_verify(message) ``` I'd like the caller to not have to care about passing the `on_rotation` option and have the wrapper deal with it when instantiating the MessageEncryptor object. Also, almost all of the time the on_rotation should be the same when rotating a secret (logging something or StatsD event) so I think it's not worth having to repeat ourselves each time we decrypt a message.
* Fix RotationConfiguration test and remove nil-kind rotates.Kasper Timm Hansen2017-09-241-4/+1
|
* Use new rotation signature in cookies.Kasper Timm Hansen2017-09-241-5/+5
| | | | [ Michael Coyne & Kasper Timm Hansen ]
* Remove advanced key generator rotations from verifier/encryptor.Kasper Timm Hansen2017-09-241-34/+6
| | | | | | | | Noticed that verifiers and encryptors never once mentioned key generators and salts but only concerned themselves with generated secrets. Clears up the confusing naming around raw_key and secret as well. And makes the rotation API follow the constructor signature to the letter.
* Infer options from the primary verifier.Kasper Timm Hansen2017-09-241-4/+7
| | | | | | Spares users from passing in non-changing values explicitly. [ Michael Coyne & Kasper Timm Hansen ]
* [ci skip] RotationConfiguration is an implementation detail, not public API.Kasper Timm Hansen2017-09-241-1/+1
|
* Add key rotation message Encryptor and VerifierMichael Coyne2017-09-232-0/+106
| | | | | | Both classes now have a rotate method where new instances are added for each call. When decryption or verification fails the next rotation instance is tried.
* Perform self-serialization once metadata is involved.Kasper Timm Hansen2017-08-131-17/+32
| | | | Adds support for metadata even when using ActiveSupport::MessageEncryptor::NullSerializer.
* Fix all rubocop violationsRafael Mendonça França2017-08-031-0/+1
|
* Let Metadata instance handle purpose coercion.Kasper Timm Hansen2017-07-231-4/+4
| | | | [ Assain Jaleel & Kasper Timm Hansen ]
* Remove dependency on `from_now` extension.Kasper Timm Hansen2017-07-231-1/+1
| | | | [ Assain Jaleel & Kasper Timm Hansen ]
* Add expires_at, expires_in, and purpose meta_data to messages.Assain2017-07-191-0/+55