Sha256: 374b8e19beb33036a64bb50d700f0cadf54ee96475a06bb1ca9af47a0e498c61
Contents?: true
Size: 929 Bytes
Versions: 35
Compression:
Stored size: 929 Bytes
Contents
# typed: ignore # Copyright (c) 2015 Sqreen. All Rights Reserved. # Please refer to our terms for more information: https://www.sqreen.com/terms.html require 'sqreen/rules/attrs' require 'sqreen/rules/rule_cb' require 'sqreen/safe_json' module Sqreen module Rules class DeviseSignupTrackCB < RuleCB def initialize(*args) super(*args) @overtimeable = false end def pre(_instance, args, _budget) data = args[1].attributes keys = args[1].class.authentication_keys ip = framework.client_ip category = 'auto-signup' data = data.select { |k, _| keys.include?(k) } if data.empty? Sqreen.log.debug { "#{category} from #{ip} but keys empty" } return end payload = { keys: data.to_a, ip: ip } record_observation(category, JSON.dump(payload), 1) advise_action(nil) end end end end
Version data entries
35 entries across 35 versions & 1 rubygems