CSP: child-src
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.
The HTTP Content-Security-Policy
(CSP)
child-src
directive defines the valid sources for web workers and nested browsing
contexts loaded using elements such as <frame>
and
<iframe>
. For workers, non-compliant requests are treated as fatal
network errors by the user agent.
CSP version | 2 |
---|---|
Directive type | Fetch directive |
default-src fallback |
Yes. If this directive is absent, the user agent will look for the
default-src directive.
|
Syntax
Content-Security-Policy: child-src 'none';
Content-Security-Policy: child-src <source-expression-list>;
This directive may have one of the following values:
'none'
-
No resources of this type may be loaded. The single quotes are mandatory.
<source-expression-list>
-
A space-separated list of source expression values. Resources of this type may be loaded if they match any of the given source expressions.
Source expressions are specified as keyword values or URL patterns: the syntax for each source expression is given in CSP Source Values.
Examples
Violation cases
Given this CSP header:
Content-Security-Policy: child-src https://example.com/
This <iframe>
and worker are blocked and won't load:
<iframe src="https://not-example.com"></iframe>
<script>
const blockedWorker = new Worker("data:application/javascript,…");
</script>
Specifications
Specification |
---|
Content Security Policy Level 3 # directive-child-src |
Browser compatibility
BCD tables only load in the browser