GDPR: e-maily a notifikace
Stránka navazuje na Inventuru e-mailů a notifikací a hodnotí ji z pohledu ochrany osobních údajů. Není to právní posudek, je to podklad pro záznamy o činnostech zpracování a pro rozhodnutí, co v kódu upravit.
Kategorie údajů, které opouštějí aplikaci
Section titled “Kategorie údajů, které opouštějí aplikaci”| Kategorie | Kde se objevuje |
|---|---|
| Identifikační údaje (jméno, příjmení, název týmu) | rezervace, objednávky, poptávky, přihlášky, Slack reporty |
| Kontaktní údaje (e-mail, telefon) | potvrzení rezervace, poptávky, přihlášky na pozici, Slack reporty o moderátorech |
| Adresa a doručovací údaje | e-shopové e-maily (položky a doprava), převzetí výhry v lize |
| Údaje o účasti a výsledcích | potvrzení rezervací, Reservation\OnboardAnonymous, výsledky týmu |
| Volný text od uživatele | kontaktní formulář, poptávka, poznámka k rezervaci, komentáře k tématům |
| Finanční údaje | odměny moderátorů a autorů témat, ceny objednávek, uplatněné vouchery |
| Kompletní výpis účtu | příloha merge_log.json u User\UserMerged a User\AccountDeletedDueToMerge |
Zvláštní kategorie údajů podle článku 9 GDPR aplikace v notifikacích neposílá. Životopis uchazeče
zůstává v úložišti (JobApplication.cv_path), do e-mailu se nepřikládá.
Právní tituly
Section titled “Právní tituly”| Skupina notifikací | Titul | Poznámka |
|---|---|---|
| Rezervace, potvrzení, připomínky, zrušení | plnění smlouvy, respektive opatření před uzavřením smlouvy | bez těchto zpráv nelze rezervaci provozovat |
| E-shopové stavové e-maily | plnění smlouvy | posílají se automaticky podle stavu objednávky |
| Reset hesla, dokončení registrace, sloučení účtů | plnění smlouvy a oprávněný zájem na bezpečnosti účtu | |
| Provozní zprávy moderátorům a autorům témat | plnění smlouvy o spolupráci | |
| Slack a interní reporty | oprávněný zájem na řízení provozu | vyžaduje minimalizaci, viz rizika |
| Newsletter | souhlas | double opt-in přes Mailing\NewsletterConfirmSubscription, potvrzení tokenem |
Reservation\OnboardAnonymous |
oprávněný zájem | navazuje na odehraný kvíz, obsahuje výsledky a nabídku účtu |
| Potvrzení kontaktního formuláře, poptávky a přihlášky | plnění opatření před uzavřením smlouvy | kopie údajů jde zpět odesílateli |
Příjemci a zpracovatelé
Section titled “Příjemci a zpracovatelé”| Příjemce | Co k němu odchází | Umístění |
|---|---|---|
SMTP mail.chytrykviz.cz |
veškerý obsah e-mailů | vlastní server, EU |
| Slack | provozní reporty včetně jména, e-mailu a telefonu moderátorů | mimo EU, standardní smluvní doložky |
| Asana | firemní poptávky, úkol zakládá job CreateAsanaTaskForInquiry |
mimo EU |
| Ecomail | e-mail, jméno a příjmení odběratelů newsletteru | EU (ČR) |
| Sentry | chybové kontexty, mohou obsahovat identifikátory a e-maily; send_default_pii není v config/sentry.php zapnuté |
mimo EU |
Interní adresy (config('kviz.admin_email'), kontakt z CompanyPageSettings) jsou skupinové
schránky. Přístup k nim je potřeba držet v souladu s tím, kdo skutečně poptávky a přihlášky řeší.
Kdo je správcem
Section titled “Kdo je správcem”Značka je jedna, firmy dvě. Zákazník to nepozná, ale z pohledu GDPR jde o dva samostatné správce, mezi kterými osobní údaje přecházejí.
| Co | Provozuje | Proč tak |
|---|---|---|
| Web, rezervace, ligy, účty hráčů | Chytrykviz s.r.o. | hlavní provoz aplikace |
| Platební brána | ChytrýKvíz Ostravsko | smluvní vztah s poskytovatelem brány |
| E-shop | ChytrýKvíz Ostravsko | e-shop má běžet jako neplátce DPH |
Sedm stavových zpráv e-shopu a všechno kolem plateb tedy odesílá tatáž aplikace, ale za jiný subjekt než rezervační e-maily. Doručovací adresa zadaná v e-shopu končí u jiného správce než rezervace téhož člověka.
Nalezená rizika
Section titled “Nalezená rizika”1. Rezervační zprávy nejde vypnout
Section titled “1. Rezervační zprávy nejde vypnout”Kdo si jednou rezervoval kvíz, dostává potvrzení, připomínky, výzvy k potvrzení stálé rezervace i
oznámení o zrušení a nemá jak se odhlásit. V aplikaci není žádné nastavení notifikací a v kódu ani
odhlašovací odkaz, opt-out existuje pouze pro mailing listy (MailingSubscription, tedy
newsletter). Část zpráv je nutná k plnění smlouvy, ale připomínky a výzvy stojí na oprávněném
zájmu, proti kterému lze vznést námitku. Bez přepínače nebo odkazu nemá subjekt údajů jak to právo
uplatnit.
Doporučení: rozdělit zprávy na nutné a nepovinné. K nepovinným přidat podepsaný odhlašovací odkaz a v profilu hráče přepínač. U rezervací bez účtu stačí odkaz v patičce, který vypne další připomínky pro danou adresu.
2. Anonymní rezervace dostane pobídku k registraci
Section titled “2. Anonymní rezervace dostane pobídku k registraci”Reservation\OnboardAnonymous posílá po kvízu výsledky a k tomu nabídku založení účtu s odkazem
platným 14 dní. Účelem není informovat o odehraném kvízu, ale získat registraci, což je svou
povahou blízko přímému marketingu, kde se právo na námitku uplatňuje bez výjimky. Důvod odeslání je
přitom produktový: bez účtu nelze příště rezervovat pod stejným názvem týmu.
Doporučení: primárně umožnit opakovanou rezervaci pod stejným názvem týmu i bez účtu, tím pobídka ztratí důvod. Dokud to nejde, oddělit výsledky od nabídky registrace, posílat nabídku jen jednou a doplnit odhlašovací odkaz.
3. Údaje přecházejí mezi dvěma správci
Section titled “3. Údaje přecházejí mezi dvěma správci”Web a rezervace provozuje Chytrykviz s.r.o., platební bránu a e-shop ChytrýKvíz Ostravsko. Aplikace je společná, správci jsou dva. Předání údajů mezi nimi musí pokrývat buď ujednání společných správců podle článku 26, nebo smlouva mezi samostatnými správci. Zásady zpracování musí jmenovat oba subjekty a u každé skupiny údajů určit odpovědnost.
Doporučení: ověřit, zda ujednání mezi oběma firmami existuje a pokrývá i platební bránu. Do zásad zpracování doplnit rozdělení rolí a v patičce e-shopových zpráv uvádět jako odesílatele ChytrýKvíz Ostravsko, ne obecnou značku.
4. Sloučení účtů posílá údaje druhé osobě
Section titled “4. Sloučení účtů posílá údaje druhé osobě”User\UserMerged chodí na cílový účet a obsahuje jméno i e-mail rušeného účtu plus přílohu
merge_log.json s výpisem přesunutých dat. Pokud jsou účty dvou různých osob, je to předání
osobních údajů třetí osobě. User\AccountDeletedDueToMerge posílá stejnou přílohu na rušenou
adresu.
Doporučení: přílohu neposílat, nebo ji omezit na počty přesunutých záznamů. Detailní log nechat pouze v administraci.
5. Kontakty moderátorů ve Slacku
Section titled “5. Kontakty moderátorů ve Slacku”Internal\QuizzDownloaded a Internal\ResultEntered vypisují do Slacku e-mail a telefon
moderátora, Moderator\QuestionaireSended e-mail kandidáta, VoucherRedeemed e-mail moderátora.
Údaje tak trvale leží v historii kanálu, kterou nikdo nemaže a která je mimo dosah mazacích
požadavků subjektů údajů.
Doporučení: ve Slacku nechat jméno a odkaz do administrace, kontaktní údaje vypustit.
6. Tokenové odkazy bez expirace
Section titled “6. Tokenové odkazy bez expirace”ReservationConfirmed, ReservationReminder, ReservationInvited a
StandingConfirmationRequested posílají odkazy s tokenem rezervace bez časové platnosti. Odkaz na
zrušení (reservation.revoke) rezervaci maže rovnou v GET požadavku, potvrzení stálé rezervace
naštěstí jen otevře formulář a mění stav až přes POST. Kdo má e-mail, může s rezervací manipulovat
i po roce.
Doporučení: používat podepsané URL s expirací, jako to dělá OnboardAnonymous (14 dní) nebo
TeamCaptainInvitation (týden).
7. Retence dat v provozních vrstvách
Section titled “7. Retence dat v provozních vrstvách”- Tabulka
notifications(kanáldatabase) není nijak prořezávaná, metadata včetně jmen podniků a částek zůstávají navždy. - Tabulka
failed_jobsuchovává payload notifikací, tedy i osobní údaje. V plánovači neníqueue:prune-failed. Horizon si své vlastní záznamy maže po týdnu.
Doporučení: doplnit do plánovače prořezávání obou tabulek a lhůtu zapsat do záznamů o činnostech.
8. Volný text od adminů
Section titled “8. Volný text od adminů”Admin\AdminMessage posílá libovolný HTML text, který admin napíše v odpovědi na feedback. Obsah
se nikam neloguje, takže není dohledatelné, co bylo odesláno.
Doporučení: ukládat odeslanou odpověď k feedbacku.
Co je v pořádku
Section titled “Co je v pořádku”- Newsletter má double opt-in a potvrzení tokenem, bez potvrzení se nic neposílá.
- Životopis uchazeče se do e-mailu nepřikládá.
- E-shopové e-maily posílá observer jen tehdy, když má objednávka adresu, takže nehrozí odeslání na cizí kontakt z rozpracované objednávky.
- Odkazy na detail objednávky používají hash, ne pořadové číslo.
- V kódu nejsou natvrdo zadané osobní adresy příjemců, interní příjemci se berou z nastavení.
Kontrolní otázky pro novou notifikaci
Section titled “Kontrolní otázky pro novou notifikaci”- Jaké údaje jsou v těle zprávy a jsou tam všechny opravdu potřeba?
- Kdo je příjemce a je jisté, že jde o subjekt údajů nebo oprávněnou osobu?
- Jde zpráva i do Slacku nebo jiné externí služby?
- Obsahuje odkaz token a má expiraci?
- Je k tomu právní titul a je zanesený v záznamech o činnostech zpracování?
