aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2025-09-21 13:29:58 +0200
committerGravatar GitHub <noreply@github.com> 2025-09-21 13:29:58 +0200
commitbc3e4c8fa4bae9591166e12caa3fb6bf73893102 (patch)
treeee38afd776e08461ba22bdbc10fe4c17d5bff172 /app
parentf1cf57b5b713527b4521c4552b5f1ac023ee3adc (diff)
Add option for CSP frame-ancestors (#7857)
* Add option for CSP frame-ancestors https://github.com/FreshRSS/FreshRSS/discussions/7856 * Revert contentSelectorPreviewAction * Same for f.php and api * Fix double init in f.php * No sandbox for API page
Diffstat (limited to 'app')
-rw-r--r--app/Controllers/indexController.php4
-rw-r--r--app/Controllers/statsController.php2
-rw-r--r--app/Controllers/subscriptionController.php4
-rw-r--r--app/FreshRSS.php2
4 files changed, 6 insertions, 6 deletions
diff --git a/app/Controllers/indexController.php b/app/Controllers/indexController.php
index 736cc8258..7c66d308a 100644
--- a/app/Controllers/indexController.php
+++ b/app/Controllers/indexController.php
@@ -58,7 +58,7 @@ class FreshRSS_index_Controller extends FreshRSS_ActionController {
'default-src' => "'self'",
'frame-src' => '*',
'img-src' => '* data: blob:',
- 'frame-ancestors' => "'none'",
+ 'frame-ancestors' => FreshRSS_Context::systemConf()->attributeString('csp.frame-ancestors') ?? "'none'",
'media-src' => '*',
]);
@@ -147,7 +147,7 @@ class FreshRSS_index_Controller extends FreshRSS_ActionController {
'default-src' => "'self'",
'frame-src' => '*',
'img-src' => '* data: blob:',
- 'frame-ancestors' => "'none'",
+ 'frame-ancestors' => FreshRSS_Context::systemConf()->attributeString('csp.frame-ancestors') ?? "'none'",
'media-src' => '*',
]);
}
diff --git a/app/Controllers/statsController.php b/app/Controllers/statsController.php
index ddb6fcb34..4491443c0 100644
--- a/app/Controllers/statsController.php
+++ b/app/Controllers/statsController.php
@@ -29,7 +29,7 @@ class FreshRSS_stats_Controller extends FreshRSS_ActionController {
$this->_csp([
'default-src' => "'self'",
- 'frame-ancestors' => "'none'",
+ 'frame-ancestors' => FreshRSS_Context::systemConf()->attributeString('csp.frame-ancestors') ?? "'none'",
'img-src' => '* data: blob:',
]);
diff --git a/app/Controllers/subscriptionController.php b/app/Controllers/subscriptionController.php
index 424b9a776..6573c0eb3 100644
--- a/app/Controllers/subscriptionController.php
+++ b/app/Controllers/subscriptionController.php
@@ -48,7 +48,7 @@ class FreshRSS_subscription_Controller extends FreshRSS_ActionController {
$this->_csp([
'default-src' => "'self'",
- 'frame-ancestors' => "'none'",
+ 'frame-ancestors' => FreshRSS_Context::systemConf()->attributeString('csp.frame-ancestors') ?? "'none'",
'img-src' => "'self' blob:",
]);
@@ -118,7 +118,7 @@ class FreshRSS_subscription_Controller extends FreshRSS_ActionController {
$this->_csp([
'default-src' => "'self'",
- 'frame-ancestors' => "'none'",
+ 'frame-ancestors' => FreshRSS_Context::systemConf()->attributeString('csp.frame-ancestors') ?? "'none'",
'img-src' => "'self' blob:",
]);
diff --git a/app/FreshRSS.php b/app/FreshRSS.php
index 62e91ff95..cac803329 100644
--- a/app/FreshRSS.php
+++ b/app/FreshRSS.php
@@ -34,7 +34,7 @@ class FreshRSS extends Minz_FrontController {
// Relax Content Security Policy to allow external images if a custom logo HTML is used
Minz_ActionController::_defaultCsp([
'default-src' => "'self'",
- 'frame-ancestors' => "'none'",
+ 'frame-ancestors' => FreshRSS_Context::systemConf()->attributeString('csp.frame-ancestors') ?? "'none'",
'img-src' => '* data:',
]);
}