La legge che impone di informare i navigatori del proprio sito Web, sulla presenza e sull'uso che viene fatto dai cookie (provvedimento n. 229 dell'8 maggio 2014), sarà operativa dal 2 Giugno 2015. Questa nuova legge ha, come era prevedibile, scatenato un putiferio. Ognuno scrive sui blog la propria interpretazione e le soluzioni possibili. Molti hanno approfittato della cosa, vendendo soluzioni informatiche "indispensabili" per poter essere a posto con gli obblighi imposti dalla nuova legge.
Quando viene promulgata una nuova legge è importante prendere in esame come prima cosa il testo effettivo, prima di andare ad affogarsi nelle mille interpretazioni della rete. Il testo del provvedimento è reperibile al seguente link:
http://www.garanteprivacy.it/web/guest/home/docweb/-/docweb-display/docweb/3118884
Il testo è molto chiaro e volendo riassumere possiamo dire che:
1) Esistono due tipi di cookie, definiti in base al loro scopo : tecnici e di profilazione. Per i primi occorre solo mettere un avviso sul sito, per i secondi occorre richiedere l'approvazione dell'utente, PRIMA della loro installazione.
2) Esistono due responsabilità distinte, in base a chi installa i cookie. Se Il cookie è installato dal proprio sito internet è definito "Di prima parte", se viene invece installato da un widget o da uno script di una terza parte, viene definito "Di terza parte". Per i primi sta al gestore del sito adempiere agli obblighi descritti nel punto 1), per i secondi è solo richiesto di informare l'utente sulla loro presenza e se possibile linkare le pagine della terza parte ove viene spiegato come negare il consenso al loro utilizzo.
Con queste poche righe voglio rispondere alla domanda che molti si stanno facendo: Se uso gli script di google analitics o di youtube, o di facebook.... cosa devo fare? Seguire i prossimi tre passaggi
Per essere in regola con la legge dobbiamo
- redare una pagina ove spieghiamo cosa sono i cookie e come il nostro sito ne fa utilizzo. Potete prendere ad esempio la pagina del mio blog:
http://diariodiunprogrammatore.blogspot.it/p/cookie-policy.html - mettere un link in tutte le pagine, per poter raggiungere l'informativa appena redata.
- inserire un popup in tutte le pagine, per informare l'utente che il sito
- Contiene cookie tecnici (se li contiene)
- Contiene cookie di profilazione (se li contiene e sono installati dal sito stesso)
- Contiene cookie di terze parti (se li contiene (es facebook, google , ecc..))
- Informazione che è possibile negare il consenso all'installazione
- Link all'infomativa estesa
Poteter usare il seguente codice per creare il popup:
<div id="cookieAlertBarMessage" class="cookieAlertBarMessage">
<div class="bbmBody">
Questo sito utilizza cookie tecnici e di terze parti. Se vuoi saperne di più o negare il consenso a tutti o ad alcuni cookie <a href="{link all'informativa estesa'}">clicca qui</a>. <br /> Continuando ad utilizzare il sito acconsenti all'uso dei cookie.
<a class="button" href="javascript:setAcceptCookies();">Chiudi</a>
</div>
</div>
<style>
.cookieAlertBarMessage {
position: fixed;
top: 0;
left: 0;
width: 100%;
background: #f2f2f2;
color: #333333;
z-index: 99990;
font-size: 13px;
text-align: center;
}
.cookieAlertBarMessage .bbmBody {
max-width: 1140px;
margin: 0 auto;
padding: 6px 0;
}
.cookieAlertBarMessage .button {
margin: 0;
padding: 5px 15px;
margin-left: 10px;
display: inline-block;
-moz-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
background: red;
border-color: #333333;
color: #ffffff;
}
.cookieAlertBarMessage .button:hover,
.cookieAlertBarMessage .button:active {
background: #333333;
border-color: #333333;
color: #ffffff;
}
</style>
<script>
setAcceptCookies = function () {
var now = new Date();
var expire = new Date()
expire.setTime(now.getTime() + (parseInt(60 * 24 * 365) * 60000));
document.cookie = 'acceptCookie=1; expires=' + expire.toGMTString() + '; path=/';
toggleCookieBar();
}
function getCookie(c_name) {
var i, x, y, ARRcookies = document.cookie.split(";");
for (i = 0; i < ARRcookies.length; i++) {
x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
x = x.replace(/^\s+|\s+$/g, "");
if (x == c_name) {
return unescape(y);
}
}
}
toggleCookieBar = function()
{
var cookieAlertBarMessage = document.getElementById("cookieAlertBarMessage");
if (getCookie('acceptCookie') != '1')
{
cookieAlertBarMessage.style.display = 'block';
}
else {
cookieAlertBarMessage.style.display = 'none';
}
}
toggleCookieBar();
</script>
Spero di essere stato utile.