Bonjour à tous
En utilisant le débogueur de FireFox je vois apparaître un warning:
Le cookie « user » sera bientôt rejeté car son attribut « sameSite » est défini sur « none » ou une valeur invalide, et sans attribut « secure ». Pour en savoir plus sur l’attribut « sameSite », consultez  https://developer.mozilla.org/docs/Web/HTTP/Cookies

A la lecture de la page en question je ne suis pas plus avancé sur la question qui me préoccupe: que faut il faire pour être conforme à cette nouvelle norme
1) en javascript côté client
2) en PHP côté serveur
Avez vous de l'info à ce sujet?
Bonjour,

j'ai résolu ce problème en ajoutant ceci à mon .htaccess
 <IfModule mod_headers.c>
  Header always edit Set-Cookie ^(.*)$ $1;SameSite=None;Secure
</IfModule>

Il semble toutefois que cela pose de nouveaux problèmes avec certains navigateurs, il faudra donc peut-être conditionner en fonction du HTTP_USER_AGENT dans un premier temps

Portez-vous bien
Attention ce dont vous parlez n'est qu'en local, ,ne jamais changer le .htaccess pour ça sur l'hébergeur ou alors il vous vole en hébergeant plusieurs sites sur la même base !
L'erreur ( avertissement sans importance ) est normal en local.
Merci de vos réponses
L’avertissement dit que le cookie sera bientôt rejeté. C’est du même type que les avertissements qui nous ont pratiquement forcés à passer de http à https.
Ma question c’est "comment créer un cookie à la nouvelle norme" ? Je n’ai rien trouvé de clair sur le sujet
Moi non plus je ne savais même pas qu'on changeait quelque chose sur les cookies ?????
A part ceci
La Cnil donne un délai d'un an aux entreprises pour modifier leur politique de cookies sur leur site internet, avant de faire pleuvoir les amendes. Ces dernières ne pourront plus tracer leurs visiteurs sans recueillir leur consentement de manière beaucoup plus explicite. Décryptage de l'avocate Sonia Cissé, du cabinet Linklaters.
Apparemment il s’agit d’un autre point, en gros si je comprends bien il s’agit d’empêcher un site de récupérer les cookies du voisin. Je ne savais même pas que c’était possible et je suis tout à fait d’accord pour protéger mes deux malheureux cookies de toute divulgation, mais je ne comprends pas comment faire.
Non mon ami tu n'a rien à faire et PERSONNE ne peut lire tes cookies,
Je t'explique des choses aussi fondamentales que simples.
Rien n'a jamais changé sauf les fake news Smiley cligne
1) Tu peux dans un cookies mettre un login j'espères que pour cela tu es OK ? un mail un mot de passe et ça c'est légal. par contre ayant un mail "unique" d'un de tes visiteurs tu comprends que tu peux lui créer son data sur une base de donnée et y mettre ce que tu apprends de lui, cette base de donnée est inviolable ... et au début était déclarée à la CNIL qui après contrôle te donnait une validation que j'ai eu en son temps. (2002) voir http://www.fox-infographie.com/fr_fi_copyright.php
2) a ce jour la CNIL ne fait plus ces contrôles et certifications.
3) AUCUN SITE NE PEUX LIRES tes cookies d'un autre site. Par contre beaucoup de sites marchants vendent à des holding un morceau de leur espace tu connais cela par cœur une IFRAME ! Alors c'est quoi ?? oh tout bêtes, si sur ton navigateur tu as deux onglets , un à ta banque l'autre chez FNAC... chaque onglet a ses Cookies et tu trouves cela normal.
et bien une IFRAME c'est si je peux dire le regroupement de tes deux onglets en un seul ! ce n'est pas nouveau c'est vieux comme internet chacun son DNS (IP) et pour reprendre mon exemple le site qui as affiché le dernier objet visité par toi sur la page de ta banque, ne voit pas les cookies de ta banque mais de son propre site !

Voila pour clarifier l'affaire !
A++ Jean-Pierre

(Je voudrait tout de même pour être complet te dire comment la CNIL
ou n importe qui peux savoir ce qu'un site stokes sur toi... il lui suffit d'avoir les outils pour lire ces cookies ce que savent faire tout les navigateurs et aller sur ce site, puis lire son propre cookies avec ses outils)
Modifié par Jean-Pierre-Bruneau (17 May 2020 - 03:44)
Ce que tu me dis est également ce que je crois, mais le problème n’est pas (plus) là
Il s’agit s’ajouter un attribut "SameSite" à un cookie et je n’ai pas trouvé comment faire.
C’est comme https: même si tu as un site qui ne fait qu’afficher des infos et donc n’utilise pas le cryptage, il faut le passer en https sinon il est marqué comme suspect dans la barre du navigateur. Je crois avoir compris que ça sera la même chose avec les cookies.
J’ai lu quelque part que c’est une façon pour BigBrother (Google) d’empêcher les autres sites de profiter des infos qu’il pompe. Je ne sais pas comment ils font ça mais je fais confiance à la sagacité des informaticiens pour trouver des failles...
Mon Ami tu as lu un peut vite mes explications,
1) Tu n'est pas tenu à être en HTTPS lorsque je vais sur un site qui fait du reroutage et du
multi cookies
Oui je doit étre HTTPS, c'est pouquoi chez mon hébergeur le site de paiement à encore une annonce site pas sur etc... pourtant Safebrand est mondialement connu.
Sur aucun de mes site qui n'a aucune Pub, tu as cette annonce.
2) La première chose qui compte c'est QUE DIT LA CNIL ?
justement le premier point qu'il précise c'est a qui s'adresse cette nouvelle directive et tu verra que ce ne sont pas nos sites sans Pub !
https://www.cnil.fr/fr/cookies-traceurs-que-dit-la-loi
Voila la vérité Smiley cligne
Dans les sites que je gère, la CNIL n'est pas ma préoccupation.
Ces sites ne font pas de commerce, ne demandent aucune information à l'utilisateur lambda et demandent aux abonnés identifieur et mot de passe, point barre.
Il n'y a que deux cookies:
1) l'identifieur de l'utilisateur
2) un flag pour dire qu'on ne veut pas entendre le morceau de musique que, comme tout site de chorale, nous nous sommes sentis obligés d'y mettre
Rien qui vaille la peine de préoccuper les autorités.

Par contre il y a une autorité dont je me passerais bien, à savoir Google qui régente le web en pratique.

Si un site n'est pas en https, la barre de navigation a l'allure suivante;
upload/1589713657-48769-navigation.png
ce simple verrou barré suffit à faire fuir les visiteur, outre que Google ne va pas se priver de pénaliser le site dans les recherches.
Je ne sais pas de quelle façon Google va "punir" les gens qui ne mettent pas "SameSite" dans leur cookies, mais ça pourrait ressembler à ça.

Je réitère ma question: comment fait-on pour mettre l'attribut SameSite à la bonne valeur dans un cookie :
1) quand le cookie est créé ou modifié par le client en JS
2) quand le cookie est créé ou modifié par le serveur en PHP
voir https://blog.dareboost.com/fr/2017/06/securisation-cookies-attribut-samesite/
pas compris comment mettre ça en œuvre.
Modifié par PapyJP (17 May 2020 - 13:15)
Bonjour mon bon Papy JP,
j'utilise ceci en .php pour connaître et savoir Qui me visite.

J'inclus l'iframe suivant en display:none qui me retourne par e-mail le temps et lieu aussitôt avérés d'une connexion.

Or par l'usage d'un VPN, et plus globalement par tous les SmartPhone, les indices de connexion publique ne sont ni fiables ni utilisables. Et puis, il suffit de vider le cache du nav-web !

Ce qui signifie que de fameux cookies ne seraient, de toutes parts pas vraiment exploitables ...

Je sais : c'est dingue ! Toutefois, je présume que la divine mode des cookies s'abandonnera à de nouvelles stratégies ...

Mais, voici mon iframe en .php dont les xxx sont à aménager :

<!doctype html>

<html lang="fr">

<head>

<meta charset="utf-8" />

<meta http-equiv="Content-Language" content="fr" />

<title>
Géolocalisation automatique
</title>

<style>
body{font-family:arial,verdana sans serif;background-color:#eee}
#global{display:block;position:relative;width:900px;margin:45px auto;padding:12px 12px 24px 12px;background-color:#fff;border:1px solid #ccc;text-align:center}
#site{color:indianred}
#geo{display:inline-block;position:relative;margin:24px 0;padding:6px 8px;background-color:#eee;font-size:1.2em}
</style>

</head>

<body>

<div id="global">

<?php
$ip = $_SERVER['REMOTE_ADDR']; // Récuperation de l'IP du visiteur
$query = @unserialize(file_get_contents('http://ip-api.com/php/'.$ip)); //	Connexion au serveur de ip-api.com et récuperation des données
if($query && $query['status'] == 'success') 
{
	// Code avec les variables
	echo "Bonjour ! La géolocalisation automatique de votre connexion à la page <i id=\"site\">https://xxx.xx/xxx.php</i> vous situe ici :<br><span id=\"geo\">" . $query['country'] . " + " . $query['region'] . " + " . $query['city'] ." " . $query['zip'] . "</span>";
};

// Pour envoyer un email HTML, l'en-tête Content-type doit être défini
	$headers = 'MIME-Version: 1.0'."\r\n";
	$headers .= 'Content-type: text/html; charset=utf-8'."\r\n";	// utf-8 est déterminant pour le bon affichage des caractères accentués !
									// La boîte de messagerie réceptrice (...) doit être également configurée à bon escient !
	$headers .= 'From: xxx xxx<xxx@xxx.xx>'."\r\n";
	
// Créer date et heure de connexion
	$date_connexion = date("d-m-Y");
	$heure_connexion = date("H:i:s"); 

	$country = $query['country'];	// Simplification des écritures ip-api pour les intégrer aisément dans la génération d'un mail automatique et d'une carte OpenStreetMap
	$city = $query['city'];
	$region = $query['region'];
	$regionname = $query['regionName'];
	$zip = $query['zip'];
	$lat = $query['lat'];
	$lon = $query['lon'];
	$query = $query['query'];

	$contenu = '<html><head></head><body style="background-color:#ccc;">';
	$contenu .= '<div style="display:block; position:relative; margin:30px auto; width:450px; padding:30px 30px 42px 30px; background-color:#fff; font-family:arial,verdana; font-size:1em;">';
	$contenu .= '<span style="color: #666;">Indices de connexion à la page<br><i style="color:#cd5c5c;">https://xxx.xx.html</i><br><br><span style="font-size: .8em;">par l\'inclusion d\'un <i>iframe</i> :<br><i style="color:#cd5c5c;">https://xxx/xx.php</i></span></span><br><br><br>';
	$contenu .= ''.$country.'<br>';
	$contenu .= ''.$city.'<br>';
	$contenu .= ''.$zip.'<br><br>';
	$contenu .= ''.$region.'<br>';
	$contenu .= ''.$regionname.'<br><br>';
	$contenu .= ''.$lat.' &mdash; '.$lon.'<br><br>';
	$contenu .= ''.$query.'<br><br>';
	$contenu .= ''.$date_connexion.'<br>';
	$contenu .= ''.$heure_connexion.'<br><br>';
	$contenu .= '<a href="https://www.openstreetmap.org/?mlat='.$lat.'&mlon='.$lon.'&zoom=10#map=10/'.$lat.'/'.$lon.'">OpenStreetMap</a>';
	$contenu .= '</div></body></html>';

// Fonction d'expédition du mail après collecte des données de connexion
	mail("xxx@xxx.xx", "Géolocation à  https:/xxx.xx/xxx.html",  $contenu, $headers); 

?>

</div>

</body>

</html>

Modifié par Arrival (05 Jun 2020 - 02:26)
Le https n’est pas "obligatoire" (et d’ailleurs comment cela pourrait il être le cas?) mais simplement une page http est marquée d’un fer rouge dans la barre de navigation, de quoi faire fuir les nouveaux visiteurs.
De plus ça indique que c’est un "vieux" site, à un moment ou "vieux" Smiley vieux est un qualificatif stigmatisant. (J’en ai marre de me faire répéter en permanence dans les journaux et autres TV que je suis autorisé à sortir mais que je ferais mieux de me "confiner volontairement" Smiley confus )
Je pense qu’il va en être de même pour les cookies. Il va falloir les munir des qualificatifs appropriés. Le tout est de savoir comment faire ça et je n’ai pas trouvé.
@PapyJP

obtenir un htpps n'est pas compliqué qui ne mérite aucune prise de chou, si :
1. ton hébergeur est up-to-date
2. il intègre LETSENCRYPT - DV
3. tu rédiges ensuite dans le fichier .htaccess à la racine de ton site :

RewriteEngine on
RewriteCond %{SERVER_PORT} 80
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Ainsi, tes URL seront automatiquement sécurisées ... en https

Note : selon l'hébergeur, une variante très légère peut survenir.
Modifié par Arrival (06 Jun 2020 - 20:24)
Merci de ta réponse
J’ai passé tous mes sites en https dès que les hébergeurs ont rendu cela possible.
Je n’en ai parlé que comme un point de comparaison.
Ma question concernant les cookies est assez différente et devrait même être plus simple: ajouter 2 paramètres aux cookies ne doit pas prendre plus que quelques lignes de code. J’ai cherché en vain comment faire, c’est pourquoi j’ai posé la question sur ce forum.je ne m’inquiète pas outre mesure: quand ça deviendra urgent je ne doute pas qu’il y aura des articles fort documentés qui paraîtront ici ou ailleurs.
@PapyJp,
l'histoire phénoménale des cookies du web a vécu, me semble-t-il une errance si excessive et abusive qu'un terme radical est envisagé.

Et ce n'est pas rien que FireFox en considère un futur évènement.

...
Modifié par Arrival (07 Jun 2020 - 20:12)
Je suis désolé de devoir écrire cela, mais quel mélange !!

Les cookies gérés en PHP et ceux gérés en Javascript.
Pour ce premier point, en gérant les cookies par javascript: nous avons immédiatement la possibilité de relire une donnée écrite ainsi par exemple lors d'un changement de page.
OUI MAIS c'est la page gérée par le navigateur du visiteur qui fait cette opération ! et donc le navigateur peut la bloquer !
Alors que le cookies fait en PHP est faite par le serveur et est forcément unique site et donc jamais rejeté ! par contre il ne peut être lu qu'a la session suivante.
AU FAIT: c'est le même cookies PHP qui sert pour un nom de domaine donné, pour gérer les sessions !
Modifié par Jean-Pierre-Bruneau (08 Jun 2020 - 14:16)
@JPB,
ne sois pas désolé, je te prie de mener la distinction entre les cookies .js et .php

C'est essentiel.

Car lorsque je "vide" le cache de mon nav-web, une distinction m'est proposée des uns, ou des autres. Mais par défaut, et sans que j'en puisse distinguer la nuance ET la profondeur ... je choisis sans trop le savoir de supprimer ce qui puisse m'identifier d'une fréquentation itinérante, mais pas par exemple au site de, de , de Alsacréations et à mon compte bancaire (!) et tous les autres sites qui me soient hautement sensibles.

Il peut être envisagé qu'une nouvelle politique de gestion de cookies nous soit proposée notamment par la Fondation Mozilla en son nav-web FireFox.

Respectueusement tien.

Ps : entre Nous et rien qu'entre Nous, je crains que la CNIL ne se soit jamais préoccupée que des cookies .js non .php (-"Hu" !) Ainsi, toutes belles dérives ont prospéré, depuis si longtemps ... lorsque notre propre hébergeur-web monnayait à Quidam notre flux de connexion à notre site-web : -"Ha ! la CNIL, ce fut tout un programme".
Modifié par Arrival (09 Jun 2020 - 20:02)
Bonjour,
SameSite est un attribut de sécurité et n'a rien à voir avec la CNIL.
Depuis Chrome 84 (Chromium est concerné) sortie fin juillet 2020, le navigateur considère que si les cookies (dont les cookies de sessions apache) n'ont pas ajouté les attributs suivants : "SameSite=none; secure", alors par défaut, le navigateur applique la politique SameSite=lax.

L'attribut SameSite=lax permet de vérifier que vous êtes toujours sur le même site. Si un hacker route votre page vers son site, vos cookies ne seront pas transmis.

Pour information, Firefox va bientôt faire la même chose :
https://hacks.mozilla.org/2020/08/changes-to-samesite-cookie-behavior/
Merci de ta réponse. Ma question était (et est toujours) comment faire pour ajouter ces attributs à un cookie en JavaScript et en php? Ça doit être très simple mais je n’ai trouvé la repose nulle part.
Je précise que le site qui m’intéresse n’a que deux cookies: un qui permet à l’utilisateur d’empêcher la page d’accueil de jouer de la musique, l’autre qui contient l’identifiant de l’utilisateur.