‪TYPO3CMS  ‪main
ControllerTrait.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
5 /*
6  * This file is part of the TYPO3 CMS project.
7  *
8  * It is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU General Public License, either version 2
10  * of the License, or any later version.
11  *
12  * For the full copyright and license information, please read the
13  * LICENSE.txt file that was distributed with this source code.
14  *
15  * The TYPO3 project - inspiring people to share!
16  */
17 
19 
25 
30 {
35  {
36  return GeneralUtility::makeInstance(Policy::class)
37  ->‪default(SourceKeyword::self)
38  // script-src 'nonce-...' required for importmaps
39  ->extend(Directive::ScriptSrc, SourceKeyword::nonceProxy)
40  // `style-src 'unsafe-inline'` required for lit in safari and firefox to allow inline <style> tags
41  // (for browsers that do not support https://caniuse.com/mdn-api_shadowroot_adoptedstylesheets)
42  ->extend(Directive::StyleSrc, SourceKeyword::unsafeInline)
43  ->set(Directive::StyleSrcAttr, SourceKeyword::unsafeInline)
44  ->extend(Directive::ImgSrc, SourceScheme::data);
45  }
46 }
‪TYPO3\CMS\Core\Security\ContentSecurityPolicy\Directive
‪Directive
Definition: Directive.php:25
‪TYPO3\CMS\Core\Security\ContentSecurityPolicy\Policy\default
‪default(SourceCollection|SourceInterface ... $sources)
Definition: Policy.php:87
‪TYPO3\CMS\Core\Security\ContentSecurityPolicy\Policy
Definition: Policy.php:31
‪TYPO3\CMS\Install\Controller\ControllerTrait
Definition: ControllerTrait.php:30
‪TYPO3\CMS\Install\Controller\ControllerTrait\createContentSecurityPolicy
‪createContentSecurityPolicy()
Definition: ControllerTrait.php:34
‪TYPO3\CMS\Install\Controller
Definition: AbstractController.php:18
‪TYPO3\CMS\Core\Security\ContentSecurityPolicy\SourceKeyword
‪SourceKeyword
Definition: SourceKeyword.php:25
‪TYPO3\CMS\Core\Security\ContentSecurityPolicy\SourceScheme
‪SourceScheme
Definition: SourceScheme.php:25
‪TYPO3\CMS\Core\Utility\GeneralUtility
Definition: GeneralUtility.php:51