Sha256: c8d32b19cacc32fb95ef113e9f13c0ae548eb0f27fccd824508959fe029d6c3f

Contents?: true

Size: 607 Bytes

Versions: 61

Compression:

Stored size: 607 Bytes

Contents

require 'rack/protection'

module Rack
  module Protection
    ##
    # Prevented attack::   CSRF
    # Supported browsers:: all
    # More infos::         http://en.wikipedia.org/wiki/Cross-site_request_forgery
    #
    # Does not accept unsafe HTTP requests if the Referer [sic] header is set to
    # a different host.
    #
    # Combine with NoReferrer to also block remote requests from non-HTTP pages
    # (FTP/HTTPS/...).
    class RemoteReferrer < Base
      default_reaction :deny

      def accepts?(env)
        safe?(env) or referrer(env) == Request.new(env).host
      end
    end
  end
end

Version data entries

61 entries across 61 versions & 4 rubygems

Version Path
classiccms-0.3.6 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.3.5 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.3.4 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.3.3 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.3.2 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.3.1 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.3.0 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
resque-pool-0.3.0 vendor/bundle/ruby/1.8/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classiccms-0.2.4.pre vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classicCMS-0.2.3 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classicCMS-0.2.2 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classicCMS-0.2.1 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classicCMS-0.2.0 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
classicCMS-0.1.2 vendor/bundle/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
resque-pool-0.3.0.beta.2 vendor/bundle/ruby/1.8/gems/rack-protection-1.2.0/lib/rack/protection/remote_referrer.rb
rack-protection-1.2.0 lib/rack/protection/remote_referrer.rb
rack-protection-1.1.4 lib/rack/protection/remote_referrer.rb
rack-protection-1.1.3 lib/rack/protection/remote_referrer.rb
rack-protection-1.1.2 lib/rack/protection/remote_referrer.rb
rack-protection-1.0.0 lib/rack/protection/remote_referrer.rb