Cookies lišty se v posledních letech staly standardním prvkem webových stránek po celém světě. Nejen že informují uživatele o použití cookies na webu, ale také zajišťují soulad s právními předpisy na ochranu osobních údajů.
V tomto článku se podíváme na to, co cookies vlastně jsou, kdo a proč musí mít cookies lištu, jaké existují kategorie cookies a jak můžete implementovat cookies lištu pomocí open source řešení.
Cookies jsou malé textové soubory, které webové stránky ukládají do vašeho prohlížeče při jejich návštěvě. Tyto soubory obsahují informace, které mohou být následně použity k různým účelům, jako je sledování uživatelských aktivit, ukládání preferencí nebo autentizace uživatele. Cookies mohou být dočasné (session cookies), které se vymažou po zavření prohlížeče, nebo trvalé (persistent cookies), které zůstávají uloženy po delší dobu.
Podíváme se na základní komunikaci mezi prohlížečem a serverem, kdy je využívána cookies.
/home.php
).Set-Cookies
: Server vrátí odpověď spolu s hlavičkou Set-Cookies
, která obsahuje informace o cookies, jež mají být uloženy v prohlížeči. Kupříkladu SessionID
./cart.php
) prohlížeč automaticky přidá uložené cookies do hlavičky požadavku a server si tak dokáže spojit prohlížeč s jeho akcemi na webu.Pro čtení cookies v prohlížeči doporučuji doplněk Cookie editor pro prohlížeče.
Evropská unie, prostřednictvím směrnice ePrivacy a obecného nařízení o ochraně osobních údajů (GDPR), stanovila přísné požadavky na používání cookies. Tyto předpisy vyžadují, aby webové stránky informovaly uživatele o použití cookies a získaly jejich souhlas před tím, než budou cookies uloženy v jejich zařízení. Toto opatření se týká všech webů, které cílí na uživatele v EU, bez ohledu na to, kde se samotný web nachází.
Cookies lišta je tedy nezbytná pro dodržení těchto právních předpisů. Nejen že chrání soukromí uživatelů, ale také zajišťuje, že webové stránky jsou v souladu s legislativou, čímž se vyhnou potenciálním pokutám.
Ne, a využiji k odpovědi citaci z webu úřadu pro ochranu osobních údajů:
Pokud užíváte pouze technická cookies, nemusíte mít cookies lištu. Jestliže však v rámci technických cookies dochází ke zpracování osobních údajů, musí být informační povinnost plněna jiným, vhodným způsobem, přístupným na webových stránkách, na kterých k takovému zpracování dochází.
Cookies můžeme rozdělit do několika kategorií, z nichž každá plní jiný účel:
Tyto cookies jsou klíčové pro základní funkce webu, jako je přihlášení uživatele nebo nákupní košík. Bez těchto cookies by webová stránka nemohla správně fungovat. K této kategorii nepotřebujeme souhlas uživatele.
Umožňují webu pamatovat si informace, které mění vzhled nebo chování webu, například preferovaný jazyk nebo region.
Pomáhají vlastníkům webu pochopit, jak návštěvníci interagují s webem, prostřednictvím anonymního sběru a hlášení informací.
Používají se ke sledování návštěvníků na webových stránkách. Jejich cílem je zobrazovat reklamy, které jsou relevantní a zajímavé pro jednotlivého uživatele, a tím hodnotnější pro vydavatele a inzerenty třetích stran.
Další častou chybou je znesnadnění odmítnutí cookies oproti jejich přijetí. Bannery často nabízejí jen možnost „přijmout všechny cookies“ nebo skrytou volbu „nastavit podrobněji“, což uživatele nutí k většímu úsilí při odmítání cookies. Podle GDPR by mělo být stejně snadné cookies odmítnout jako je přijmout. To znamená, že pokud je na banneru tlačítko „přijmout vše“, mělo by být vedle něj i tlačítko „odmítnout vše“, obě snadno přístupná a viditelná, aby uživatelé mohli rychle a snadno vyjádřit svou volbu.
Příklad chybné implementace cookies lišty:
Některé weby se uchylují k praktikám, jako je předzaškrtnutí políčka nebo informování uživatele, že pokračováním v používání webu automaticky souhlasí s cookies. Tyto metody jsou však v rozporu s GDPR, které vyžaduje aktivní, konkrétní a informovaný souhlas uživatele.
Souhlas musí být udělen po poskytnutí jasných informací o účelech cookies a musí být svobodným rozhodnutím uživatele. Pasivní nebo nevědomé udělení souhlasu není přípustné, a proto by provozovatelé webů měli zajistit, aby proces získávání souhlasu byl transparentní a uživatelsky přívětivý.
Mnoho webových stránek automaticky ukládá cookies do zařízení uživatele bez jeho informovaného souhlasu, což je v rozporu s požadavky GDPR a směrnice ePrivacy. Tento přístup, známý jako „opt-out“, je nelegální od 1. ledna 2022, kdy byl zaveden režim „opt-in“. To znamená, že provozovatelé webů musí nejprve identifikovat netechnické cookies a získat předem souhlas uživatele s jejich použitím. Ignorování volby uživatele, kdy cookies jsou uloženy i přes nepovolení, představuje vážné porušení právních předpisů a může vést k vysokým pokutám.
Jednou z běžných chyb je nedostatečná kategorizace cookies podle účelu jejich zpracování. Některé weby stále nabízejí pouze možnost „přijmout všechny cookies“ nebo „odmítnout všechny cookies“, což nezohledňuje různé potřeby souhlasu pro různé typy cookies. Ideální řešení zahrnuje rozdělení cookies do kategorií, jako jsou nezbytně nutné, analytické a reklamní cookies, což umožňuje uživateli vybrat, s jakými účely souhlasí. Tímto způsobem je zajištěno, že jsou respektována práva uživatelů a zároveň jsou dodrženy legislativní požadavky.
Další typickou chybou je neumožnění uživatelům odvolat jednou udělený souhlas. Souhlas musí být kdykoliv odvolatelný, aby byl považován za svobodný. Provozovatelé webů často zapomínají nabídnout snadný způsob, jak může uživatel změnit své preference týkající se cookies. Optimálním řešením je umístit odkaz na změnu nastavení cookies do patičky webu nebo využít grafickou ikonu, která je vždy viditelná a umožňuje uživatelům rychlý přístup k úpravě svých preferencí. Tímto způsobem je zajištěno, že souhlas je plně v souladu s GDPR a uživatelé mají kontrolu nad svými osobními údaji.
Poslední častou chybou při implementaci cookies lišty je nedostatečné informování uživatelů o tom, jaké cookies se používají a za jakým účelem. Mnoho webů poskytuje pouze základní informace, které nejsou dostatečně detailní, aby uživatelé mohli učinit informované rozhodnutí. Podle GDPR musí být uživatelé jasně a srozumitelně informováni o typech cookies, které web používá, účelu jejich zpracování, a kdo bude mít k těmto datům přístup. Kromě toho by měla být uživatelům poskytnuta možnost získat více informací prostřednictvím odkazů na detailní cookie policy nebo privacy policy.
Připravil jsem si pro vás dvě open-source řešení, které vám podstatně usnadní práci s cookies lištou. Oba nástroje jsou zdarma, snadno konfigurovatelné a splňují požadavky GDPR (když si je správně otextujete a nalinkujete na své cookies policy).
Prověřená, funkční a vizuálně skvělá cookies lišta, která zároveň vyhovuje právním požadavkům. Než se pustíte do implementace tak si ji můžete prohlédnout na ukázce od autora.
Kde si ji můžete zkustit jednoduše modifikovat a přizpůsobit, zároveň si na této stránce můžete vygenerovat konfigurační json, který posléze využijete při instalaci.
1. krok
Vložte CSS a Javascript do stránek.
<script type="module" src="cookieconsent-config.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.css">
2. krok
Označte kategorií javascriptové bloky na stránce a přepněte jejich type na hodnotu text/plain
<script
type="text/plain"
data-category="analytics"
data-service="Google Analytics"
>
<!-- Google analytics code -->
<!-- ... -->
</script>
3. krok
Stáhněte si a vložte do stránek cookieconsent-config.js
z playgroundu a upravte si textace
4. krok
Vložte si do patičky odkaz změnu nastavení cookies
<button type="button" data-cc="show-preferencesModal">View Preferences Modal</button>
Pro Tip: Zkušenější vývojáři využijí instalaci pomocí NPM , případně možnost integrovat do mnoha frameworků jako je vue js, react, angular a podobně.
<script src="
https://cdn.jsdelivr.net/npm/cookieconsent@3.1.1/build/cookieconsent.min.js
"></script>
<link href="
https://cdn.jsdelivr.net/npm/cookieconsent@3.1.1/build/cookieconsent.min.css
" rel="stylesheet">
window.addEventListener("load", function() {
window.cookieconsent.initialise({
palette: {
popup: { background: "#000" },
button: { background: "#f1d600" }
},
theme: "classic",
content: {
message: "Tento web používá cookies k zajištění co nejlepšího zážitku.",
dismiss: "Rozumím!",
link: "Zjistit více",
href: "/privacy-policy"
}
});
});
window.addEventListener("load", function() {
window.cookieconsent.initialise({
palette: {
popup: {
background: "#edeff5",
text: "#838391"
},
button: {
background: "#4b81e8"
}
},
theme: "edgeless",
type: "opt-in",
content: {
message: "Tento web používá cookies k zajištění co nejlepšího zážitku.",
allow: "Povolit cookies",
deny: "Zakázat",
link: "Zjistit více",
href: "/privacy-policy"
},
onInitialise: function (status) {
var type = this.options.type;
var didConsent = this.hasConsented();
if (type == 'opt-in' && didConsent) {
// enable cookies
}
if (type == 'opt-out' && !didConsent) {
// disable cookies
}
},
onStatusChange: function(status, chosenBefore) {
var type = this.options.type;
var didConsent = this.hasConsented();
if (type == 'opt-in' && didConsent) {
// enable cookies
}
if (type == 'opt-out' && !didConsent) {
// disable cookies
}
},
onRevokeChoice: function() {
var type = this.options.type;
if (type == 'opt-in') {
// disable cookies
}
if (type == 'opt-out') {
// enable cookies
}
}
});
});
Zpracoval jsem pro vás jednoduchý checklist, který vám pomůže zajistit, že vaše cookies lišta je v souladu s právními požadavky:
Cookies lišta je důležitým prvkem webových stránek, který zajišťuje soulad s právními předpisy na ochranu osobních údajů. Implementace cookies lišty vyžaduje pečlivé plánování a dodržování zásad transparentnosti, informovanosti a respektování soukromí uživatelů. Díky open source řešením můžete snadno a efektivně implementovat cookies lištu na svůj web a zajistit, že budete v souladu s legislativou a ochráníte se tak před potenciálními pokutami a právními problémy.