mirror of
				https://github.com/lunaisnotaboy/mastodon.git
				synced 2025-10-31 04:05:23 +00:00 
			
		
		
		
	Fix CSP with S3/SWIFT hosts
This commit is contained in:
		
							parent
							
								
									4a9e3f80e8
								
							
						
					
					
						commit
						c4b3479173
					
				|  | @ -4,6 +4,16 @@ | |||
| 
 | ||||
| if Rails.env.production? | ||||
|   assets_host = Rails.configuration.action_controller.asset_host || "https://#{ENV['WEB_DOMAIN'] || ENV['LOCAL_DOMAIN']}" | ||||
|   data_hosts = [assets_host] | ||||
| 
 | ||||
|   if ENV['S3_ENABLED'] == 'true' | ||||
|     attachments_host = ENV['S3_ALIAS_HOST'] || ENV['S3_CLOUDFRONT_HOST'] || ENV['S3_HOSTNAME'] || "s3-#{ENV['S3_REGION'] || 'us-east-1'}.amazonaws.com" | ||||
|   elsif ENV['SWIFT_ENABLED'] == 'true' | ||||
|     attachments_host = ENV['SWIFT_OBJECT_URL'] | ||||
|   else | ||||
|     attachments_host = nil | ||||
|   end | ||||
|   data_hosts << attachments_host unless attachments_host.nil? | ||||
| 
 | ||||
|   Rails.application.config.content_security_policy do |p| | ||||
|     p.base_uri        :none | ||||
|  | @ -13,9 +23,10 @@ if Rails.env.production? | |||
|     p.font_src        :self, assets_host | ||||
|     p.img_src         :self, :https, :data, :blob | ||||
|     p.style_src       :self, :unsafe_inline, assets_host | ||||
|     p.media_src       :self, :data, assets_host | ||||
|     p.media_src       :self, :data, *data_hosts | ||||
|     p.frame_src       :self, :https | ||||
|     p.connect_src     :self, :blob, assets_host, Rails.configuration.x.streaming_api_base_url | ||||
|     p.worker_src      :self, assets_host | ||||
|     p.connect_src     :self, :blob, Rails.configuration.x.streaming_api_base_url, *data_hosts | ||||
|   end | ||||
| end | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue