]> git.openstreetmap.org Git - rails.git/blobdiff - config/initializers/secure_headers.rb
Add piwik to allowed URIs in connect-src
[rails.git] / config / initializers / secure_headers.rb
index 361fb32838afcd6f00eeab8f4c15e38deab7ea27..bb901e3759430cb365f8bcd44407776ec199cf06 100644 (file)
@@ -1,27 +1,36 @@
 if defined?(CSP_REPORT_URL)
-  policy = {
+  csp_policy = {
     :default_src => %w['self'],
     :child_src => %w['self'],
     :connect_src => %w['self'],
     :font_src => %w['none'],
     :form_action => %w['self'],
     :frame_ancestors => %w['self'],
+    :frame_src => %w['self'],
     :img_src => %w['self' data: www.gravatar.com *.wp.com *.tile.openstreetmap.org *.tile.thunderforest.com *.openstreetmap.fr],
     :media_src => %w['none'],
     :object_src => %w['self'],
     :plugin_types => %w[],
     :script_src => %w['self'],
-    :style_src => %w['self' 'unsafe-inline'],
+    :style_src => %w['self'],
     :report_uri => [CSP_REPORT_URL]
   }
 
-  policy[:script_src] << PIWIK["location"] if defined?(PIWIK)
+  csp_policy[:connect_src] << PIWIK["location"] if defined?(PIWIK)
+  csp_policy[:img_src] << PIWIK["location"] if defined?(PIWIK)
+  csp_policy[:script_src] << PIWIK["location"] if defined?(PIWIK)
 else
-  policy = SecureHeaders::OPT_OUT
+  csp_policy = SecureHeaders::OPT_OUT
 end
 
+cookie_policy = {
+  :secure => SecureHeaders::OPT_OUT,
+  :httponly => SecureHeaders::OPT_OUT
+}
+
 SecureHeaders::Configuration.default do |config|
-  config.hsts = "max-age=0"
+  config.hsts = SecureHeaders::OPT_OUT
   config.csp = SecureHeaders::OPT_OUT
-  config.csp_report_only = policy
+  config.csp_report_only = csp_policy
+  config.cookies = cookie_policy
 end