GDPR Compliance Skill
Knowledge base per audit e implementazione compliance GDPR su siti web.
Checklist GDPR Completa
1. Cookie & Tracking
| Requisito |
Dettaglio |
Priority |
| Cookie banner |
Consenso PRIMA di caricare cookie non essenziali |
🔴 CRITICO |
| Granularità consenso |
Categorie separate: necessari, analytics, marketing, preferenze |
🔴 CRITICO |
| Rifiuto facile |
"Rifiuta tutti" visibile quanto "Accetta tutti" |
🔴 CRITICO |
| Nessun pre-check |
Checkbox NON pre-selezionate |
🔴 CRITICO |
| Consenso registrato |
Log di chi ha acconsentito, quando, a cosa |
🟡 IMPORTANTE |
| Revoca consenso |
Possibilità di cambiare preferenze in qualsiasi momento |
🔴 CRITICO |
| Script condizionali |
GA4, GTM, Facebook Pixel caricati SOLO dopo consenso |
🔴 CRITICO |
2. Privacy Policy
| Requisito |
Dettaglio |
| Titolare trattamento |
Nome, indirizzo, email, PEC del titolare |
| Dati raccolti |
Lista completa di tutti i dati personali raccolti |
| Base giuridica |
Per ogni trattamento: consenso, contratto, legittimo interesse |
| Finalità |
Perché ogni dato viene raccolto |
| Durata conservazione |
Per quanto tempo vengono conservati i dati |
| Diritti interessato |
Accesso, rettifica, cancellazione, portabilità, opposizione |
| Trasferimento extra-UE |
Se si usano servizi USA (Google, Cloudflare, ecc.) |
| Cookie policy |
Dettaglio di ogni cookie, durata, scopo |
| Contatto DPO |
Se applicabile (obbligatorio per aziende >250 dipendenti) |
3. Form & Dati
| Requisito |
Dettaglio |
| Checkbox consenso |
Checkbox esplicita per privacy policy (non pre-checked) |
| Link privacy |
Link alla privacy policy vicino al form |
| Minimizzazione dati |
Raccogli SOLO i dati necessari |
| Doppio opt-in newsletter |
Email di conferma prima di iscrivere |
| Dati sensibili |
MAI raccogliere dati sensibili senza consenso esplicito |
| Crittografia |
HTTPS obbligatorio, dati sensibili cifrati |
4. Diritti Utente
| Diritto |
Implementazione |
| Accesso |
Endpoint/pagina per scaricare propri dati |
| Rettifica |
Possibilità di modificare i propri dati |
| Cancellazione |
"Right to be forgotten" - eliminare account e dati |
| Portabilità |
Export dati in formato leggibile (JSON/CSV) |
| Opposizione |
Opt-out da marketing/profilazione |
Implementazione Cookie Banner
Pattern con Iubenda
// components/cookie-banner.tsx
'use client';
export function CookieBanner() {
return (
<Script
src={`https://cs.iubenda.com/autoblocking/${siteId}.js`}
strategy="beforeInteractive"
/>
<Script
src="//cdn.iubenda.com/cs/iubenda_cs.js"
strategy="afterInteractive"
/>
);
}
Pattern Custom (senza Iubenda)
// Pattern cookie consent custom
// 1. Mostra banner al primo accesso
// 2. Blocca TUTTI gli script di tracking
// 3. Al consenso, carica script in base alle categorie accettate
// 4. Salva preferenze in localStorage + cookie
// 5. Fornisci UI per revocare/modificare consenso
const CONSENT_KEY = 'cookie-consent';
type ConsentCategories = {
necessary: true; // Sempre true, non disattivabile
analytics: boolean;
marketing: boolean;
preferences: boolean;
};
// Caricamento condizionale GA4
function loadAnalytics(consent: ConsentCategories) {
if (consent.analytics) {
// Carica GA4 script
window.gtag?.('consent', 'update', {
analytics_storage: 'granted',
});
}
}
Audit GDPR Automatico
Check da eseguire su ogni sito:
1. COOKIE SCAN
- Quali cookie vengono impostati prima del consenso?
- Ci sono cookie di terze parti senza consenso?
- Il banner è presente e funzionante?
2. SCRIPT SCAN
- GA4/GTM caricato prima del consenso? → VIOLAZIONE
- Facebook Pixel caricato prima del consenso? → VIOLAZIONE
- Hotjar/analytics caricati prima del consenso? → VIOLAZIONE
3. FORM SCAN
- Checkbox privacy presente?
- Link a privacy policy presente?
- Dati minimi richiesti?
- Double opt-in per newsletter?
4. DOCUMENT SCAN
- Privacy policy presente e aggiornata?
- Cookie policy presente?
- Terms of service presenti?
- Documenti in tutte le lingue del sito?
5. SECURITY SCAN
- HTTPS attivo?
- Headers di sicurezza (CSP, X-Frame-Options)?
- Dati sensibili cifrati?
Template Privacy Policy
Struttura minima richiesta per legge italiana + GDPR:
1. Titolare del trattamento
2. Tipi di dati raccolti
3. Modalità di trattamento
4. Base giuridica del trattamento
5. Finalità del trattamento
6. Destinatari dei dati
7. Trasferimento dati extra-UE
8. Periodo di conservazione
9. Diritti dell'interessato
10. Cookie policy (può essere separata)
11. Modifiche alla policy
12. Data ultimo aggiornamento
Sanzioni
| Violazione |
Sanzione massima |
| Mancata informativa |
Fino a €20M o 4% fatturato |
| Cookie senza consenso |
Fino a €20M o 4% fatturato |
| Data breach non notificato |
Fino a €10M o 2% fatturato |
| Mancata nomina DPO |
Fino a €10M o 2% fatturato |
1---2name: gdpr3description: GDPR compliance knowledge base - cookie audit, form consent, user rights, privacy checklist. Use when auditing GDPR compliance, implementing cookie consent, reviewing form data collection, or checking privacy requirements.4---56# GDPR Compliance Skill78Knowledge base per audit e implementazione compliance GDPR su siti web.910## Checklist GDPR Completa1112### 1. Cookie & Tracking1314| Requisito | Dettaglio | Priority |15|-----------|-----------|----------|16| Cookie banner | Consenso PRIMA di caricare cookie non essenziali | 🔴 CRITICO |17| Granularità consenso | Categorie separate: necessari, analytics, marketing, preferenze | 🔴 CRITICO |18| Rifiuto facile | "Rifiuta tutti" visibile quanto "Accetta tutti" | 🔴 CRITICO |19| Nessun pre-check | Checkbox NON pre-selezionate | 🔴 CRITICO |20| Consenso registrato | Log di chi ha acconsentito, quando, a cosa | 🟡 IMPORTANTE |21| Revoca consenso | Possibilità di cambiare preferenze in qualsiasi momento | 🔴 CRITICO |22| Script condizionali | GA4, GTM, Facebook Pixel caricati SOLO dopo consenso | 🔴 CRITICO |2324### 2. Privacy Policy2526| Requisito | Dettaglio |27|-----------|-----------|28| Titolare trattamento | Nome, indirizzo, email, PEC del titolare |29| Dati raccolti | Lista completa di tutti i dati personali raccolti |30| Base giuridica | Per ogni trattamento: consenso, contratto, legittimo interesse |31| Finalità | Perché ogni dato viene raccolto |32| Durata conservazione | Per quanto tempo vengono conservati i dati |33| Diritti interessato | Accesso, rettifica, cancellazione, portabilità, opposizione |34| Trasferimento extra-UE | Se si usano servizi USA (Google, Cloudflare, ecc.) |35| Cookie policy | Dettaglio di ogni cookie, durata, scopo |36| Contatto DPO | Se applicabile (obbligatorio per aziende >250 dipendenti) |3738### 3. Form & Dati3940| Requisito | Dettaglio |41|-----------|-----------|42| Checkbox consenso | Checkbox esplicita per privacy policy (non pre-checked) |43| Link privacy | Link alla privacy policy vicino al form |44| Minimizzazione dati | Raccogli SOLO i dati necessari |45| Doppio opt-in newsletter | Email di conferma prima di iscrivere |46| Dati sensibili | MAI raccogliere dati sensibili senza consenso esplicito |47| Crittografia | HTTPS obbligatorio, dati sensibili cifrati |4849### 4. Diritti Utente5051| Diritto | Implementazione |52|---------|-----------------|53| Accesso | Endpoint/pagina per scaricare propri dati |54| Rettifica | Possibilità di modificare i propri dati |55| Cancellazione | "Right to be forgotten" - eliminare account e dati |56| Portabilità | Export dati in formato leggibile (JSON/CSV) |57| Opposizione | Opt-out da marketing/profilazione |5859---6061## Implementazione Cookie Banner6263### Pattern con Iubenda6465```tsx66// components/cookie-banner.tsx67'use client';6869export function CookieBanner() {70 return (71 <Script72 src={`https://cs.iubenda.com/autoblocking/${siteId}.js`}73 strategy="beforeInteractive"74 />75 <Script76 src="//cdn.iubenda.com/cs/iubenda_cs.js"77 strategy="afterInteractive"78 />79 );80}81```8283### Pattern Custom (senza Iubenda)8485```tsx86// Pattern cookie consent custom87// 1. Mostra banner al primo accesso88// 2. Blocca TUTTI gli script di tracking89// 3. Al consenso, carica script in base alle categorie accettate90// 4. Salva preferenze in localStorage + cookie91// 5. Fornisci UI per revocare/modificare consenso9293const CONSENT_KEY = 'cookie-consent';9495type ConsentCategories = {96 necessary: true; // Sempre true, non disattivabile97 analytics: boolean;98 marketing: boolean;99 preferences: boolean;100};101102// Caricamento condizionale GA4103function loadAnalytics(consent: ConsentCategories) {104 if (consent.analytics) {105 // Carica GA4 script106 window.gtag?.('consent', 'update', {107 analytics_storage: 'granted',108 });109 }110}111```112113---114115## Audit GDPR Automatico116117### Check da eseguire su ogni sito:118119```1201. COOKIE SCAN121 - Quali cookie vengono impostati prima del consenso?122 - Ci sono cookie di terze parti senza consenso?123 - Il banner è presente e funzionante?1241252. SCRIPT SCAN126 - GA4/GTM caricato prima del consenso? → VIOLAZIONE127 - Facebook Pixel caricato prima del consenso? → VIOLAZIONE128 - Hotjar/analytics caricati prima del consenso? → VIOLAZIONE1291303. FORM SCAN131 - Checkbox privacy presente?132 - Link a privacy policy presente?133 - Dati minimi richiesti?134 - Double opt-in per newsletter?1351364. DOCUMENT SCAN137 - Privacy policy presente e aggiornata?138 - Cookie policy presente?139 - Terms of service presenti?140 - Documenti in tutte le lingue del sito?1411425. SECURITY SCAN143 - HTTPS attivo?144 - Headers di sicurezza (CSP, X-Frame-Options)?145 - Dati sensibili cifrati?146```147148---149150## Template Privacy Policy151152Struttura minima richiesta per legge italiana + GDPR:153154```1551. Titolare del trattamento1562. Tipi di dati raccolti1573. Modalità di trattamento1584. Base giuridica del trattamento1595. Finalità del trattamento1606. Destinatari dei dati1617. Trasferimento dati extra-UE1628. Periodo di conservazione1639. Diritti dell'interessato16410. Cookie policy (può essere separata)16511. Modifiche alla policy16612. Data ultimo aggiornamento167```168169## Sanzioni170171| Violazione | Sanzione massima |172|------------|-----------------|173| Mancata informativa | Fino a €20M o 4% fatturato |174| Cookie senza consenso | Fino a €20M o 4% fatturato |175| Data breach non notificato | Fino a €10M o 2% fatturato |176| Mancata nomina DPO | Fino a €10M o 2% fatturato |