Warden::SharedSession.configure do |config|
config. = Rails.application.secrets['shared_cookie']
config.secret = Rails.application.secrets['shared_secret']
config. = ->(key, salt) {
# like in https://github.com/plataformatec/devise/blob/master/lib/devise/models/authenticatable.rb
record = User::FindOrCreate.run!(uid: key.first.to_s) rescue nil
record if record && record.authenticatable_salt == salt
}
config. = ->(record) {
# like in https://github.com/plataformatec/devise/blob/master/lib/devise/models/authenticatable.rb
[[record.uid], record.authenticatable_salt]
}
end