Skip to content

Commit

Permalink
Fixes #3883 - Remove {{page}} from Web/HTTP (#4534)
Browse files Browse the repository at this point in the history
* csp base-uri

* CSP child-src

* rewording default-src tr

* consistency for first §

* CSP connect-srcé

* csp font-src minor syntax color fixes

* FP - accelerometer

* FP - accelerometer - forgot to save

* Feature Policy

* form-action

* frame-src

* img-src

* manifest-src

* media-src

* navigate-to

* object-src

* prefetch-src

* script-src

* script-src-attr

* style-src, script-src-elem and a bunch of minor fixes

* style-src-attr

* style-src-elem

* worker-src

* Minor typo and link fixes

Co-authored-by: Carolyn Wu <87150472+cw118@users.noreply.github.com>
  • Loading branch information
SphinxKnight and cw118 authored Mar 27, 2022
1 parent a3842ce commit aad6a70
Show file tree
Hide file tree
Showing 21 changed files with 658 additions and 854 deletions.
57 changes: 24 additions & 33 deletions files/fr/web/http/headers/content-security-policy/base-uri/index.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,12 @@
---
title: 'CSP: base-uri'
title: 'CSP : base-uri'
slug: Web/HTTP/Headers/Content-Security-Policy/base-uri
tags:
- CSP
- Content-Security-Policy
- Directive
- HTTP
- Reference
- Security
- Sécurité
- source
translation_of: Web/HTTP/Headers/Content-Security-Policy/base-uri
browser-compat: http.headers.csp.Content-Security-Policy.base-uri
---
{{HTTPSidebar}}

La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) **`base-uri`** restreint les URL qui peuvent être utilisées comme valeur d'un élément {{HTMLElement("base")}}. Si cette valeur est absente, alors toutes les adresses sont autorisées. Si cette directive est absente, l'agent utilisateur va utiliser la valeur dans l'élément {{HTMLElement("base")}}.
La directive HTTP [`Content-Security-Policy`](/fr/docs/Web/HTTP/Headers/Content-Security-Policy) **`base-uri`** restreint les URL qui peuvent être utilisées comme valeur d'un élément [`<base>`](/fr/docs/Web/HTML/Element/base). Si cette valeur est absente, alors toutes les adresses sont autorisées. Si cette directive est absente, l'agent utilisateur utilisera la valeur de l'élément [`<base>`](/fr/docs/Web/HTML/Element/base).

<table class="properties">
<tbody>
Expand All @@ -24,53 +16,55 @@ La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) **`base-uri`**
</tr>
<tr>
<th scope="row">Type de directive</th>
<td>{{Glossary("Document directive")}}</td>
<td><a href="/fr/docs/Glossary/Document_directive">Directive de document</a></td>
</tr>
<tr>
<th scope="row">{{CSP("default-src")}} par défaut</th>
<td>Non, ne pas la définir autorise toutes les URL</td>
<th scope="row">Utilisation de <a href="/fr/docs/Web/HTTP/Headers/Content-Security-Policy/default-src"><code>default-src</code></a> par défaut</th>
<td>Non, ne pas définir cette directive autorise toutes les URL</td>
</tr>
</tbody>
</table>

## Syntaxe

Une ou plusieurs _sources_ peuvent être autorisées pour cette directive :
Une ou plusieurs *sources* peuvent être autorisées pour cette directive&nbsp;:

Content-Security-Policy: base-uri <source>;
Content-Security-Policy: base-uri <source> <source>;
```http
Content-Security-Policy: base-uri <source>;
Content-Security-Policy: base-uri <source> <source>;
```

### Sources

Bien que cette directive utilise les mêmes arguments que d'autres directives CSP, certains d'entre eux n'ont pas de sens concernant l'élément {{HTMLElement("base")}}, comme les valeurs `'unsafe-inline'` et `'strict-dynamic'`
Cette directive utilise en grande partie les mêmes valeurs de source comme arguments que les autres directives CSP&nbsp;: [valeurs sources pour CSP](/fr/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#sources).

{{page("fr/Web/HTTP/Headers/Content-Security-Policy/default-src", "Sources")}}
On notera toutefois que certaines de ces valeurs n'ont pas de sens pour `base-uri`, à l'instar des mots-clés `'unsafe-inline'` et `'strict-dynamic'`.

## Exemples

### Configuration par balise \<meta>
### Configuration avec la balise `<meta>`

```html
<meta http-equiv="Content-Security-Policy" content="base-uri 'self'">
```

### Configuration par Apache
### Configuration avec Apache

```bash
```html
<IfModule mod_headers.c>
Header set Content-Security-Policy "base-uri 'self'";
</IfModule>
```

### Configuration par Nginx
### Configuration avec Nginx

```bash
```
add_header Content-Security-Policy "base-uri 'self';"
```

### Cas de violation

À partir du moment où votre domaine n'est pas `example.com`, un élément {{HTMLElement("base")}} avec son attribut `href` défini à `https://example.com` résultera en une violation de CSP.
À partir du moment où votre domaine n'est pas `example.com`, un élément [`<base>`](/fr/docs/Web/HTML/Element/base) avec son attribut `href` défini à `https://example.com` résultera en une violation de CSP.

```html example-bad
<meta http-equiv="Content-Security-Policy" content="base-uri 'self'">
Expand All @@ -83,17 +77,14 @@ add_header Content-Security-Policy "base-uri 'self';"

## Spécifications

| Spécification | Statut | Commentaire |
| ---------------------------------------------------------------------------- | ---------------------------- | -------------------- |
| {{specName("CSP 3.0", "#directive-base-uri", "base-uri")}} | {{Spec2('CSP 3.0')}} | Inchangé. |
| {{specName("CSP 1.1", "#directive-base-uri", "base-uri")}} | {{Spec2('CSP 1.1')}} | Définition initiale. |
{{Specifications}}

## Compatibilité des navigateurs

{{Compat("http.headers.csp.base-uri")}}
{{Compat}}

## Voir aussi

- {{HTTPheader("Content-Security-Policy")}}
- {{HTMLElement("base")}}
- {{domxref("Node.baseURI")}}
- [`Content-Security-Policy`](/fr/docs/Web/HTTP/Headers/Content-Security-Policy)
- [`<base>`](/fr/docs/Web/HTML/Element/base)
- [`Node.baseURI`](/fr/docs/Web/API/Node/baseURI)
Original file line number Diff line number Diff line change
@@ -1,22 +1,12 @@
---
title: 'CSP: child-src'
title: 'CSP : child-src'
slug: Web/HTTP/Headers/Content-Security-Policy/child-src
tags:
- CSP
- Child
- Content-Security-Policy
- Directive
- HTTP
- Reference
- Security
- Sécurité
- child-src
- source
translation_of: Web/HTTP/Headers/Content-Security-Policy/child-src
browser-compat: http.headers.csp.Content-Security-Policy.child-src
---
{{HTTPSidebar}}

La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) **`child-src`** définit les sources valides de [web workers](/en-US/docs/Web/API/Web_Workers_API) et de contextes de navigations imbriqués chargés au moyen d'éléments tels que {{HTMLElement("frame")}} et {{HTMLElement("iframe")}}. Pour les workers, les requêtes conformes sont traitées comme des erreurs de réseau fatales par l'agent utilisateur.
La directive HTTP [`Content-Security-Policy`](/fr/docs/Web/HTTP/Headers/Content-Security-Policy) **`child-src`** définit les sources valides de [<i lang="en">web workers</i>](/fr/docs/Web/API/Web_Workers_API) et de contextes de navigations imbriqués chargés au moyen d'éléments tels que [`<frame>`](/fr/docs/Web/HTML/Element/frame) et [`<iframe>`](/fr/docs/Web/HTML/Element/iframe). Pour les <i lang="en">workers</i>, les requêtes non-conformes sont traitées comme des erreurs de réseau fatales par l'agent utilisateur.

<table class="properties">
<tbody>
Expand All @@ -26,62 +16,62 @@ La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) **`child-src`*
</tr>
<tr>
<th scope="row">Type de directive</th>
<td>{{Glossary("Fetch directive")}}</td>
<td><a href="/fr/docs/Glossary/Fetch_directive">Directive de récupération</a></td>
</tr>
<tr>
<th scope="row">{{CSP("default-src")}} par défaut</th>
<th scope="row">Utilisation de <a href="/fr/docs/Web/HTTP/Headers/Content-Security-Policy/default-src"><code>default-src</code></a> par défaut</th>
<td>
Oui, si cette directive est absente, l'agent utilisateur consultera la
directive <code>default-src</code>
Oui, si cette directive est absente, l'agent utilisateur consultera la directive <code>default-src</code>
</td>
</tr>
</tbody>
</table>

## Syntaxe

Une ou plusieurs sources peuvent être autorisées pour cette directive :
Une ou plusieurs sources peuvent être autorisées pour cette directive&nbsp;:

Content-Security-Policy: child-src <source>;
Content-Security-Policy: child-src <source> <source>;
```http
Content-Security-Policy: child-src <source>;
Content-Security-Policy: child-src <source> <source>;
```

### Sources

{{page("Web/HTTP/Headers/Content-Security-Policy/connect-src", "Sources")}}
`<source>` peut être n'importe quelle valeur parmi celles énumérées dans [l'article sur les valeurs sources CSP](/fr/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#sources).

On notera que cet ensemble de valeurs peut être utilisé pour toutes les [directives de récupération](/fr/docs/Glossary/Fetch_directive) (et pour [certaines autres directives](/fr/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#directives_associées)).

## Exemples

### Cas de violation

Soit cet en-tête CSP :
Soit cet en-tête CSP&nbsp;:

```bash
```http
Content-Security-Policy: child-src https://example.com/
```

Cet {{HTMLElement("iframe")}} et ce worker seront bloqués et ne se chargeront pas :
Cette [`<iframe>`](/fr/docs/Web/HTML/Element/iframe) et ce <i lang="en">worker</i> seront bloqués et ne se chargeront pas&nbsp;:

```html
<iframe src="https://not-example.com"></iframe>

<script>
var blockedWorker = new Worker("data:application/javascript,...");
let blockedWorker = new Worker("data:application/javascript,...");
</script>
```

## Spécifications

| Spécification | Statut | Commentaire |
| -------------------------------------------------------------------------------- | ---------------------------- | -------------------- |
| {{specName("CSP 3.0", "#directive-child-src", "child-src")}} | {{Spec2('CSP 3.0')}} | Inchangé. |
| {{specName("CSP 1.1", "#directive-child-src", "child-src")}} | {{Spec2('CSP 1.1')}} | Définition initiale. |
{{Specifications}}

## Compatibilité des navigateurs

{{Compat("http.headers.csp.Content-Security-Policy.child-src")}}
{{Compat}}

## Voir aussi

- {{HTTPHeader("Content-Security-Policy")}}
- {{HTMLElement("frame")}} and {{HTMLElement("iframe")}}
- {{domxref("Worker")}}, {{domxref("SharedWorker")}}, {{domxref("ServiceWorker")}}
- [`Content-Security-Policy`](/fr/docs/Web/HTTP/Headers/Content-Security-Policy)
- [`<frame>`](/fr/docs/Web/HTML/Element/frame) et [`<iframe>`](/fr/docs/Web/HTML/Element/iframe)
- [`Worker`](/fr/docs/Web/API/Worker), [`SharedWorker`](/fr/docs/Web/API/SharedWorker), [`ServiceWorker`](/fr/docs/Web/API/ServiceWorker)
Original file line number Diff line number Diff line change
@@ -1,30 +1,21 @@
---
title: 'CSP: connect-src'
title: 'CSP : connect-src'
slug: Web/HTTP/Headers/Content-Security-Policy/connect-src
tags:
- CSP
- Content-Security-Policy
- Directive
- HTTP
- Reference
- Security
- Sécurité
- connect-src
- source
translation_of: Web/HTTP/Headers/Content-Security-Policy/connect-src
browser-compat: http.headers.csp.Content-Security-Policy.connect-src
---
{{HTTPSidebar}}

La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) **`connect-src`** restreint les URL qui peuvent être chargées en utilisant des interfaces de programmation. Les API qui sont affectées sont :
La directive HTTP [`Content-Security-Policy`](/fr/docs/Web/HTTP/Headers/Content-Security-Policy) **`connect-src`** restreint les URL qui peuvent être chargées en utilisant des interfaces de programmation. Les API concernées sont&nbsp;:

- {{HTMLElement("a")}} {{htmlattrxref("ping", "a")}},
- {{domxref("Fetch")}},
- {{domxref("XMLHttpRequest")}},
- {{domxref("WebSocket")}},
- {{domxref("EventSource")}}, and
- {{domxref("Navigator.sendBeacon()")}}.
- [`<a>`](/fr/docs/Web/HTML/Element/a) et l'attribut [`ping`](/fr/docs/Web/HTML/Element/a#ping),
- [`fetch()`](/fr/docs/Web/API/fetch),
- [`XMLHttpRequest`](/fr/docs/Web/API/XMLHttpRequest),
- [`WebSocket`](/fr/docs/Web/API/WebSocket),
- [`EventSource`](/fr/docs/Web/API/EventSource),
- [`Navigator.sendBeacon()`](/fr/docs/Web/API/Navigator/sendBeacon).

> **Note :** `connect-src 'self'` ne s'applique pas aux schémas de websocket pour tous les navigateurs. Pour plus d'informations, consulter : <https://github.com/w3c/webappsec-csp/issues/7>.
> **Note :** `connect-src 'self'` ne s'applique pas aux schémas de websocket pour tous les navigateurs. Pour plus d'informations, consulter [ce ticket (en anglais)](https://github.com/w3c/webappsec-csp/issues/7).
<table class="properties">
<tbody>
Expand All @@ -34,77 +25,77 @@ La directive HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) **`connect-src
</tr>
<tr>
<th scope="row">Type de directive</th>
<td>{{Glossary("Fetch directive")}}</td>
<td><a href="/fr/docs/Glossary/Fetch_directive">Directive de récupération</a></td>
</tr>
<tr>
<th scope="row">{{CSP("default-src")}} par défaut</th>
<th scope="row">Utilisation de <a href="/fr/docs/Web/HTTP/Headers/Content-Security-Policy/default-src"><code>default-src</code></a> par défaut</th>
<td>
Oui, si cette directive est absente, l'agent utilisateur consultera la
directive <code>default-src</code>
Oui, si cette directive est absente, l'agent utilisateur consultera la directive <code>default-src</code>.
</td>
</tr>
</tbody>
</table>

## Syntaxe

Une ou plusieurs sources peuvent être autorisées pour cette directive :
Une ou plusieurs sources peuvent être autorisées pour cette directive&nbsp;:

Content-Security-Policy: connect-src <source>;
Content-Security-Policy: connect-src <source> <source>;
```http
Content-Security-Policy: connect-src <source>;
Content-Security-Policy: connect-src <source> <source>;
```

### Sources

{{page("/fr/docs/Web/HTTP/Headers/Content-Security-Policy/default-src", "common_sources")}}
`<source>` peut être n'importe quelle valeur parmi celles énumérées dans [l'article sur les valeurs sources CSP](/fr/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#sources).

On notera que cet ensemble de valeurs peut être utilisé pour toutes les [directives de récupération](/fr/docs/Glossary/Fetch_directive) (et pour [certaines autres directives](/fr/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#directives_associées)).

## Exemples

### Cas de violation

Soit cet en-tête CSP :
Soit cet en-tête CSP&nbsp;:

```bash
```http
Content-Security-Policy: connect-src https://example.com/
```

Les connexions suivantes seront bloquées et ne se chargeront pas :
Les connexions suivantes seront bloquées et ne se chargeront pas&nbsp;:

```html
<a ping="https://not-example.com">

<script>
var xhr = new XMLHttpRequest();
let xhr = new XMLHttpRequest();
xhr.open('GET', 'https://not-example.com/');
xhr.send();
var ws = new WebSocket("https://not-example.com/");
let ws = new WebSocket("https://not-example.com/");
var es = new EventSource("https://not-example.com/");
let es = new EventSource("https://not-example.com/");
navigator.sendBeacon("https://not-example.com/", { ... });
</script>
```

## Spécifications

| Spécification | Statut | Commentaire |
| ------------------------------------------------------------------------------------ | ---------------------------- | -------------------- |
| {{specName("CSP 3.0", "#directive-connect-src", "connect-src")}} | {{Spec2('CSP 3.0')}} | Inchangé. |
| {{specName("CSP 1.1", "#directive-connect-src", "connect-src")}} | {{Spec2('CSP 1.1')}} | Définition initiale. |
{{Specifications}}

## Compatibilité des navigateurs

{{Compat("http.headers.csp.Content-Security-Policy.connect-src")}}
{{Compat}}

## Notes de compatibilité

- Avant Firefox 23, `xhr-src` était utilisé en lieu et place de la directive `connect-src` et ne s'appliquait qu'à l'API {{domxref("XMLHttpRequest")}}.
- Avant Firefox 23, `xhr-src` était utilisé en lieu et place de la directive `connect-src` et ne s'appliquait qu'à l'API [`XMLHttpRequest`](/fr/docs/Web/API/XMLHttpRequest).

## Voir aussi

- {{HTTPHeader("Content-Security-Policy")}}
- {{HTMLElement("a")}} {{htmlattrxref("ping", "a")}}
- {{domxref("Fetch")}}
- {{domxref("XMLHttpRequest")}}
- {{domxref("WebSocket")}}
- {{domxref("EventSource")}}
- [`Content-Security-Policy`](/fr/docs/Web/HTTP/Headers/Content-Security-Policy)
- [`<a>`](/fr/docs/Web/HTML/Element/a) et l'attribut [`ping`](/fr/docs/Web/HTML/Element/a#ping)
- [`fetch()`](/fr/docs/Web/API/fetch)
- [`XMLHttpRequest`](/fr/docs/Web/API/XMLHttpRequest)
- [`WebSocket`](/fr/docs/Web/API/WebSocket)
- [`EventSource`](/fr/docs/Web/API/EventSource)
Loading

0 comments on commit aad6a70

Please sign in to comment.