aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/http/headers/set-cookie/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/fr/web/http/headers/set-cookie/index.html')
-rw-r--r--files/fr/web/http/headers/set-cookie/index.html43
1 files changed, 20 insertions, 23 deletions
diff --git a/files/fr/web/http/headers/set-cookie/index.html b/files/fr/web/http/headers/set-cookie/index.html
index 5326802c98..5208808eb7 100644
--- a/files/fr/web/http/headers/set-cookie/index.html
+++ b/files/fr/web/http/headers/set-cookie/index.html
@@ -12,11 +12,10 @@ translation_of: Web/HTTP/Headers/Set-Cookie
---
<div>{{HTTPSidebar}}</div>
-<p><span class="seoSummary">L'en-tête de réponse HTTP <strong><code>Set-Cookie</code></strong> est utilisé pour envoyer un cookie depuis le serveur à l'agent utilisateur afin qu'il puisse le renvoyer dans l'avenir.</span> Pour envoyer plusieurs cookies, on enverra plusieurs en-têtes <code>Set-Cookie</code> dans la même réponse.</p>
+<p>L'en-tête de réponse HTTP <strong><code>Set-Cookie</code></strong> est utilisé pour envoyer un cookie depuis le serveur à l'agent utilisateur afin qu'il puisse le renvoyer dans l'avenir.</span> Pour envoyer plusieurs cookies, on enverra plusieurs en-têtes <code>Set-Cookie</code> dans la même réponse.</p>
-<div class="notecard warning">
- <p><b>Avertissement :</b></p>
- <p>Les navigateurs empêchent le code JavaScript <i>front-end</i> d'accéder à l'en-tête <code>Set-Cookie</code>, comme l'exige la spécification Fetch, qui définit <code>Set-Cookie</code> comme un <a href="https://fetch.spec.whatwg.org/#forbidden-response-header-name">nom d'en-tête de réponse interdit</a> qui <a href="https://fetch.spec.whatwg.org/#ref-for-forbidden-response-header-name%E2%91%A0">doit être filtré</a> de toute réponse exposée au code <i>front-end</i>.</p>
+<div class="warning">
+ <p><strong>Attention :</strong> Les navigateurs empêchent le code JavaScript <i>front-end</i> d'accéder à l'en-tête <code>Set-Cookie</code>, comme l'exige la spécification Fetch, qui définit <code>Set-Cookie</code> comme un <a href="https://fetch.spec.whatwg.org/#forbidden-response-header-name">nom d'en-tête de réponse interdit</a> qui <a href="https://fetch.spec.whatwg.org/#ref-for-forbidden-response-header-name%E2%91%A0">doit être filtré</a> de toute réponse exposée au code <i>front-end</i>.</p>
</div>
<p>Pour plus d'information, voir le <a href="/fr/docs/Web/HTTP/Cookies">guide sur les cookies HTTP</a>.</p>
@@ -59,7 +58,7 @@ Set-Cookie: &lt;cookie-name&gt;=&lt;cookie-value&gt;; Domain=&lt;domain-value&gt
<dl>
<dt><code>&lt;cookie-name&gt;=&lt;cookie-value&gt;</code></dt>
- <dd>Un cookie commence par une paire nom-valeur:
+ <dd><p>Un cookie commence par une paire nom-valeur:</p>
<ul>
<li>Le nom porté par <code>&lt;cookie-name&gt;</code> peut-être composé de n'importe quels caractères ASCII, à l'exception des caractères de contrôle, d'espace, de tabulation et des caractères de séparation suivants : <code>( ) &lt; &gt; @ , ; : \ " / [ ] ? = { }</code>.</li>
<li>La valeur, <code>&lt;cookie-value&gt;</code>, peut éventuellement être entourée de guillemets doubles et peut être composée de n'importe quel caractère ASCII à l'exception des caractères de contrôle, des blancs, des guillemets doubles, d'une virgule, d'un point-virgule ou d'une barre oblique inversée (<i>backslash</i>). <strong>Encodage</strong> : de nombreuses implémentations encodent les caractères d'URL (<i>URL-encoding</i>) bien que ce ne soit pas nécessaire selon la RFC. Une telle transformation facilite tout de même l'utilisation de caractères autorisés.</li>
@@ -73,9 +72,8 @@ Set-Cookie: &lt;cookie-name&gt;=&lt;cookie-value&gt;; Domain=&lt;domain-value&gt
<p>Si non spécifié, le cookie devient un <strong>cookie de session</strong>. Une session finit quand le client s'arrête, les cookies de sessions sont alors supprimés à ce moment.</p>
- <div class="notecard warning">
- <p><b>Attention :</b></p>
- <p>Plusieurs navigateurs ont un système de récupération de session qui enregistre les onglets et les restaure quand le navigateur redémarre. Les cookies de session seront aussi restaurés comme si le navigateur ne s'était jamais arrêté.</p>
+ <div class="warning">
+ <p><strong>Attention :</strong> Plusieurs navigateurs ont un système de récupération de session qui enregistre les onglets et les restaure quand le navigateur redémarre. Les cookies de session seront aussi restaurés comme si le navigateur ne s'était jamais arrêté.</p>
</div>
<p>Quand une telle date de péremption est indiquée, elle est relative au <em>client</em> et pas au serveur.</p>
@@ -83,7 +81,7 @@ Set-Cookie: &lt;cookie-name&gt;=&lt;cookie-value&gt;; Domain=&lt;domain-value&gt
<dt><code>Max-Age=&lt;number&gt; </code>{{optional_inline}}</dt>
<dd>Le nombre de secondes avant son expiration. Une valeur nulle ou négative fera expirer immédiatement le cookie. Si <code>Expires</code> et <code>Max-Age</code> sont configurés, <code>Max-Age</code> sera prioritaire.</dd>
<dt><code>Domain=&lt;domain-value&gt;</code> {{optional_inline}}</dt>
- <dd>Le domaine où le cookie sera envoyé.
+ <dd><p>Le domaine où le cookie sera envoyé.</p>
<ul>
<li>Si omis, la valeur par défaut sera l'hôte de l'URL du document courant. Les sous-domaines ne seront pas inclus.</li>
<li>Contrairement aux anciennes spécifications, le point au début dans les noms de domaines (<code>.example.com</code>) est ignoré.</li>
@@ -91,18 +89,19 @@ Set-Cookie: &lt;cookie-name&gt;=&lt;cookie-value&gt;; Domain=&lt;domain-value&gt
</ul>
</dd>
<dt><code>Path=&lt;path-value&gt;</code> {{optional_inline}}</dt>
- <dd>Un chemin qui doit exister dans l'URL de la requête ou le navigateur n'enverra pas d'en-tête <code>Cookie</code> correspondante par la suite.</dd>
- <dd>La barre oblique (<code>/</code>) est interprétée comme un séparateur de répertoire. Les sous-répertoires sont inclus, par exemple: pour <code>Path=/docs</code> les répertoires <code>/docs</code>, <code>/docs/Web/</code> et <code>/docs/Web/HTTP</code> sont concernés.</dd>
- <dt id="secure"><code>Secure</code> {{optional_inline}}</dt>
- <dd>Un cookie sécurisé est envoyé uniquement si la requête est faite en <code>https:</code> (sauf pour <i>localhost</i>). Cependant des informations confidentielles ne devraient jamais être enregistrées dans un cookie classique, en effet le mécanique est non sécurisé et ne chiffre aucune information.
- <p class="notecard note"><b>Note:</b> Les sites non sécurisés (<code>http:</code>) ne peuvent plus définir des cookies <code></code>Secure</code> désormais (depuis Chrome 52+ et Firefox 52+). Depuis Firefox 75, cette restriction ne s'applique pas pour <i>localhost</i>.</p>
+ <dd>Un chemin qui doit exister dans l'URL de la requête ou le navigateur n'enverra pas d'en-tête <code>Cookie</code> correspondante par la suite. La barre oblique (<code>/</code>) est interprétée comme un séparateur de répertoire. Les sous-répertoires sont inclus, par exemple: pour <code>Path=/docs</code> les répertoires <code>/docs</code>, <code>/docs/Web/</code> et <code>/docs/Web/HTTP</code> sont concernés.</dd>
+ <dt><code>Secure</code> {{optional_inline}}</dt>
+ <dd><p>Un cookie sécurisé est envoyé uniquement si la requête est faite en <code>https:</code> (sauf pour <i>localhost</i>). Cependant des informations confidentielles ne devraient jamais être enregistrées dans un cookie classique, en effet le mécanique est non sécurisé et ne chiffre aucune information.</p>
+ <div class="notecard note">
+ <p><strong>Note :</strong> Les sites non sécurisés (<code>http:</code>) ne peuvent plus définir des cookies <code></code>Secure</code> désormais (depuis Chrome 52+ et Firefox 52+). Depuis Firefox 75, cette restriction ne s'applique pas pour <i>localhost</i>.</p>
+ </div>
</dd>
- <dt id="httponly"><code>HttpOnly</code> {{optional_inline}}</dt>
+ <dt><code>HttpOnly</code> {{optional_inline}}</dt>
<dd>Empêche JavaScript d'accéder au cookie; par exemple, au travers de la propriété <a href="/fr/docs/Web/API/Document/cookie"><code>Document.cookie</code></a>, de l'API <a href="/fr/docs/Web/API/XMLHttpRequest"><code>XMLHttpRequest</code></a> ou de l'API <a href="/fr/docs/Web/API/Request"><code>Request</code></a>. Cela protège des attaques <em>cross-site scripting</em> (<a href="/fr/docs/Glossary/XSS">XSS</a>).</dd>
- <dt id="samesite"><code>SameSite=&lt;samesite-value&gt;</code> {{optional_inline}}</dt>
- <dd>Contrôle si un cookie est envoyé avec les requêtes d'origine croisée, offrant ainsi une certaine protection contre les attaques de falsification de requêtes inter-sites (<a href="/fr/docs/Glossary/CSRF">CSRF</a>).
+ <dt><code>SameSite=&lt;samesite-value&gt;</code> {{optional_inline}}</dt>
+ <dd><p>Contrôle si un cookie est envoyé avec les requêtes d'origine croisée, offrant ainsi une certaine protection contre les attaques de falsification de requêtes inter-sites (<a href="/fr/docs/Glossary/CSRF">CSRF</a>).</p>
<div class="notecard note">
- <p>Les normes relatives aux <a href="/fr/docs/Web/HTTP/Headers/Set-Cookie/SameSite">Cookies SameSite</a> ont récemment changé de telle sorte que :</p>
+ <p><strong>Note :</strong> Les normes relatives aux <a href="/fr/docs/Web/HTTP/Headers/Set-Cookie/SameSite">Cookies SameSite</a> ont récemment changé de telle sorte que :</p>
<ol>
<li>Le comportement d'envoi des cookies si <code>SameSite</code> n'est pas spécifié est <code>SameSite=Lax</code>. Auparavant, le comportement par défaut était que les cookies étaient envoyés pour toutes les requêtes.</li>
@@ -111,8 +110,7 @@ Set-Cookie: &lt;cookie-name&gt;=&lt;cookie-value&gt;; Domain=&lt;domain-value&gt
<p>Les options ci-dessous couvrent le nouveau comportement. Voir le tableau <a href="/fr/docs/Web/HTTP/Headers/Set-Cookie/SameSite#browser_compatibility">Compatibilité des navigateurs</a> pour des informations sur la mise en œuvre spécifique des navigateurs (lignes : « <code>SameSite</code> : Defaults to <code>Lax</code> » et « <code>SameSite</code> : Secure context required »).</p>
</div>
- Les options sont :
-
+ <p>Les options sont :</p>
<ul>
<li><code>Strict</code> : le navigateur envoie le cookie uniquement pour les demandes provenant du même site (c'est-à-dire les demandes provenant du même site qui a défini le cookie). Si la demande provient d'une URL différente de l'URL actuelle, aucun cookie avec l'attribut <code>SameSite=Strict</code> n'est envoyé.</li>
<li><code>Lax</code> : Le cookie n'est pas envoyé sur les requêtes inter-sites, telles que les appels pour charger des images ou des <i>iframes</i>, mais il est envoyé lorsqu'un utilisateur navigue vers le site d'origine à partir d'un site externe (par exemple, s'il suit un lien). C'est le comportement par défaut si l'attribut <code>SameSite</code> n'est pas spécifié.</li>
@@ -157,9 +155,8 @@ Set-Cookie: &lt;cookie-name&gt;=&lt;cookie-value&gt;; Domain=&lt;domain-value&gt
<p>De plus, les cookies avec le préfixe <code>__Host-</code> doivent avoir un <code>path</code> qui vaut <code>/</code> (donc tous les chemins de l'hôte) et ne doivent pas avoir d'attribut <code>Domain</code>.</p>
-<div class="notecard warning">
- <p><b>Attention :</b></p>
- <p>Pour les clients qui n'implémentent pas les préfixes de cookies, vous ne pouvez pas compter sur ces contraintes, les cookies avec un préfixe seront toujours acceptés.</p>
+<div class="warning">
+ <p><strong>Attention :</strong> Pour les clients qui n'implémentent pas les préfixes de cookies, vous ne pouvez pas compter sur ces contraintes, les cookies avec un préfixe seront toujours acceptés.</p>
</div>
<pre>// Les deux sont acceptés s'ils viennent d'une origine sécurisée (HTTPS)