]> git.openstreetmap.org Git - rails.git/blob - config/initializers/secure_headers.rb
f4633d72f5e860717cb030bbd32a17f60381b10c
[rails.git] / config / initializers / secure_headers.rb
1 if defined?(CSP_REPORT_URL)
2   csp_policy = {
3     :default_src => %w['self'],
4     :child_src => %w['self'],
5     :connect_src => %w['self'],
6     :font_src => %w['none'],
7     :form_action => %w['self'],
8     :frame_ancestors => %w['self'],
9     :img_src => %w['self' data: www.gravatar.com *.wp.com *.tile.openstreetmap.org *.tile.thunderforest.com *.openstreetmap.fr],
10     :media_src => %w['none'],
11     :object_src => %w['self'],
12     :plugin_types => %w[],
13     :script_src => %w['self'],
14     :style_src => %w['self' 'unsafe-inline'],
15     :report_uri => [CSP_REPORT_URL]
16   }
17
18   csp_policy[:script_src] << PIWIK["location"] if defined?(PIWIK)
19 else
20   csp_policy = SecureHeaders::OPT_OUT
21 end
22
23 cookie_policy = {
24   :secure => SecureHeaders::OPT_OUT,
25   :httponly => SecureHeaders::OPT_OUT
26 }
27
28 SecureHeaders::Configuration.default do |config|
29   config.hsts = "max-age=0"
30   config.csp = SecureHeaders::OPT_OUT
31   config.csp_report_only = csp_policy
32   config.cookies = cookie_policy
33 end