class Sqreen::Actions::RedirectIp

Block a list of IP address ranges by forcefully redirecting the user to a specific URL.

Attributes

redirect_url[R]

Public Class Methods

new(id, opts, params = {}) click to toggle source
Calls superclass method Sqreen::Actions::Base::new
# File lib/sqreen/actions/redirect_ip.rb, line 21
def initialize(id, opts, params = {})
  super(id, opts)
  @redirect_url = params['url']
  raise "no url provided for action #{id}" unless @redirect_url
end

Public Instance Methods

do_run(client_ip) click to toggle source
# File lib/sqreen/actions/redirect_ip.rb, line 27
def do_run(client_ip)
  Sqreen.log.debug "Will request redirect for client with IP #{client_ip} " \
    "(action: #{id})."
  {
    :status => :skip,
    :new_return_value => [303, { 'Location' => @redirect_url }, ['']],
    :skip_rem_cbs => true,
  }
end
event_properties(client_ip) click to toggle source
# File lib/sqreen/actions/redirect_ip.rb, line 37
def event_properties(client_ip)
  { 'ip_address' => client_ip, 'url' => @redirect_url }
end