Recueillir le consentement Cookies

La nouvelle loi RGPD  (Règlement Européen pour la Protection des Données Personnelles ou rgpd = règlement général sur la protection des données- règlement no 2016/679) est applicable depuis le 25 mai 2018.

Petit rappel sur les cookies (extrait) "... Dépôt de cookies et traceurs

  • on demande le consentement *avant* le dépôt, pas après. On ne dépose strictement aucun cookie non-technique avant le consentement du visiteur ;
  • On explique quels cookies sont déposés, et pourquoi ! Quel besoin aussi vous avez de déposer 35 cookies tiers…
  • Le consentement doit être *valable* : c’est une action positive. J’insiste ! « Poursuivre sa navigation » n’en est pas une, en particulier parce qu’ainsi vous conditionnez l’utilisation du service au dépôt de pisteurs. Donc non, le petit bandeau en mode « si vous continuez votre visite, c’est que vous acceptez les cookies », c’est non, re-non, et au bûcher.
  • Vous devez fournir un moyen de refuser les cookies. Je dis bien, *vous*. Renvoyer l’utilisateur à une obscure page qui lui dit qu’il n’a qu’à configurer son navigateur pour refuser les cookies, ce n'est pas conforme à ce qu’attend la CNIL. ....  "


Nos institutions respectent-elles les lois en vigueur actuelles sur les données personnelles ?


En application de la directive européenne dite Paquet Télécom, les internautes doivent être informés et donner leur consentement préalablement à l'insertion de traceurs. Ils doivent disposer d'une possibilité de choisir de ne pas être tracés lorsqu'ils visitent un site Web. Les éditeurs ont donc l'obligation de solliciter au préalable le consentement des utilisateurs. Ce consentement est valable 13 mois maximum. Certains traceurs sont cependant dispensés du recueil de ce consentement. Information sur Cookies & traceurs : que dit la loi ? (site de la CNIL)

Les internautes doivent disposer d'une possibilité de choisir de ne pas être tracés lorsqu'ils visitent un site ou utilisent une application.

Quels cookies nécessitent le consentement préalable des utilisateurs ?
Parmi les cookies nécessitant une information préalable et une demande de consentement, on peut notamment citer :
les cookies liés aux opérations relatives à la publicité ciblée,
certains cookies de mesure d'audience (Google Analytics,….),
les cookies des réseaux sociaux générés notamment par leurs boutons de partage lorsqu'ils collectent des données personnelles sans consentement des personnes concernées.
Tous les cookies n'ont pas besoin d'autorisation, seul ceux ayant un but de traçage en ont besoin.
L’utilisateur doit être informé, par l'apparition d'un bandeau, des finalités précises des cookies utilisés ainsi que :
- de la possibilité de s'opposer à ces cookies,
- ou poursuite de sa navigation vaut accord au dépôt de cookies sur son terminal.


Il existe plusieurs possibilités avec CMSMS.

Cas avec tarteaucitron
- c'est un logiciel libre (Licence MIT) et le code est disponible

Il suffit d'aller sur le site tarteaucitron et de suivre le Guide d'installation en effectuant les modifications pour adaptation. Exemple pour google_analytics
- créer un gabarit 'tarteaucitron' avec le code indiqué en "Etape 2 : initialiser le script"
sans oublier les ....
- modifier ou créer un gabarit 'google_analytics' avec le code indiqué en 'Etape 3 : ajouter les services"
- dans les gabarits de pages ajouter la balise avant le </head> et ajouter la balise avant le </body>.
Il est aussi possible de modifier le CSS.
Un des avantages est que 'utilisateur à la possibilité de pouvoir modifier son consentement à tout moment. (Comme la loi RGPD le demande).
De plus c'est le système de gestion de cookies que la CNIL utilise.

Cas avec cookie_consent
Les fichiers nécessaires :
- le fichier function.cookie_consent.php (http://dev.cmsmadesimple.org/projects/cookie_consent)
Il faut ajouter :
- le fichier jquery.cookie.js de la page https://github.com/carhartl/jquery-cookie/tree/master/src (Plus d'information sur http://cookiecuttr.com/)

Il suffit donc d’insérer le fichier function.cookie_consent.php dans le dossier plugins de CMSMS
De créer un dossier cookie_consent dans le dossier existant  lib de CMSMS et d'y insérer le fichier jquery.cookie.js

Suivre le mode d'emploi du plugin, donc simplement dans les gabarits des pages ajouter
- avant le </head>
{cms_jquery exclude='jquery-ui.min.js,jquery.ui.nestedSortable.js,jquery.json.min.js'} 
{cookie_consent action='head'} {* le tag qui affiche le css du bandeau *}

- dans  le <body>
 {cookie_consent action='body' lang='fr'}   {* le tag qui affiche les information du bandeau *}
       {if isset($smarty.cookies.cookie_consent) && $smarty.cookies.cookie_consent != ""}
         {if $smarty.cookies.cookie_consent == 'yes'} {* si oui affiche le code Analytics *}
        **le code Google Analytics  **
        {/if}
    {/if}

Il est bien sur possible de modifier le texte du bandeau en modifiant le texte de la « ligne fr » du plugin. Par défaut la page d'information possède le lien "cookies" pour l'alias de page.

Personnellement j'ai fait les modifications suivantes :
dans le plugin
sous la ligne elseif ( $lang == 'fr' )
J'ai remplacé
<div id="cookie_consent"><p>Afin d&prime;am&eacute;liorer votre exp&eacute;rience sur ce site, nous utilisons des cookies <a class="accept_cookies">Accepter les cookies</a><a href="cookies" class="more_info">Plus d&prime;informations</a><!--<a class="decline_cookies">Refuser les cookies</a>--></p></div>
par
<div id="cookie_consent"><p>Ce site utilise des cookies. <a class="accept_cookies">Accepter les cookies</a> | <a class="decline_cookies">Refuser les cookies</a> | <a href="page alias_informations" class="more_info">Plus d&prime;informations pour votre navigation</a></p</div>

Dans la feuille de style des gabarits j'ai ajouté le style de la partie CSS de « Head action » du  plugin

dans les gabarits des pages
- avant le </head>
{cms_jquery exclude='jquery-ui.min.js,jquery.ui.nestedSortable.js,jquery.json.min.js'} 
Uniquement, car le CSS est dans la feuille de style

- avant le <div id="header"> pour avoir le bandeau en haut de la page
{global_content name='onclic_cookie'}

J'ai un bloc de contenu global  onclic_cookie avec
 {cookie_consent action='body' lang='fr'}
      {if isset($smarty.cookies.cookie_consent) && $smarty.cookies.cookie_consent != ""}
         {if $smarty.cookies.cookie_consent == 'yes'}
       {global_content name='google_analytics'}
        {/if}
   {/if}

J'ai un bloc de contenu global google_analytics avec mon code Google Analytics

ce qui donne
cookies


Crédits
- CNIL 
- Rolf cmscanbesimple 
 - Open-Freax
Document  http://jc.etiemble.free.fr/abc/ JCE - version 26/05/2018-0  CC_licence


Télécharger au format PDF 110 Ko. (331)


Corrections, compléments : Me contacter