PR5062 - Implementació de Privacy by Design
Objectius
- Aplicar els principis de Privacy by Design en una aplicació web
- Configurar eines corporatives amb la mínima recopilació de dades
- Elaborar una EIPD per a un sistema de tractament d'alt risc
- Implementar el registre d'activitats de tractament
- Redactar una política de privacitat i gestió de consentiments
Prerequisits
| Element | Detall |
|---|---|
| Temps estimat | 4 hores |
| Eines necessàries | Docker Desktop, editor de text |
| Material | Guia RGPD de l'AEPD (disponible a aepd.es) |
Introducció
Continuem treballant amb l'empresa fictícia TechCat S.L. de la pràctica anterior. Ara apliquem els principis del RGPD al disseny i operació dels seus sistemes, posant especial èmfasi en la Privacy by Design i la gestió del consentiment.
Part 1: Registre d'Activitats de Tractament (Art. 30 RGPD)
# Registre d'Activitats de Tractament - TechCat S.L.
**Responsable del tractament**: TechCat S.L.
**CIF**: B-XXXXXXXX
**DPO**: [Si aplica - TechCat amb 12.000 interessats probablement no necessita DPO, però recomanable]
**Data d'actualització**: ____________________
---
## Tractament 1: Gestió de clients (empreses usuàries del SaaS)
| Camp | Valor |
|------|-------|
| **Finalitat** | Gestió de la relació contractual amb els clients empresarials |
| **Base legal** | Art. 6.1.b RGPD - Execució d'un contracte |
| **Categories de dades** | Dades de contacte (nom, email, telèfon), facturació |
| **Categories d'interessats** | Administradors de les empreses clientes |
| **Destinataris** | Stripe (pagaments), Intercom (suport) |
| **Transferències internacionals** | Stripe (EUA) - SCCs signades |
| **Termini de conservació** | Durada del contracte + 5 anys (obligació fiscal) |
| **Mesures de seguretat** | Xifrat TLS, accés restringit, autenticació MFA |
---
## Tractament 2: Gestió de les dades dels empleats dels clients
| Camp | Valor |
|------|-------|
| **Rol de TechCat** | ENCARREGAT del tractament (no responsable) |
| **Responsable** | Cada empresa client |
| **Base legal del responsable** | Art. 6.1.b (contracte laboral) |
| **Categories de dades** | Dades laborals: nom, DNI, salari, compte bancari, dades de salut |
| **Categories d'interessats** | Empleats de les empreses clients (~12.000 persones) |
| **Transferències internacionals** | AWS (EUA) - SCCs i DPA |
| **Termini de conservació** | Fins a supressió sol·licitada pel responsable |
| **Mesures de seguretat** | Xifrat AES-256, segregació per tenant, accés auditoria |
| **Document**: | Acord d'Encàrrec del Tractament (DPA) signat amb cada client |
---
## Tractament 3: Anàlisi web (Google Analytics)
| Camp | Valor |
|------|-------|
| **Finalitat** | Millorar el lloc web i l'experiència d'usuari |
| **Base legal** | Art. 6.1.a RGPD - Consentiment |
| **Categories de dades** | Comportament de navegació, IP truncada, identificador de sessió |
| **Transferències internacionals** | Google (EUA) - SCCs (Google Analytics Data Processing Amendment) |
| **Termini de conservació** | 26 mesos (configuració Google Analytics) |
| **Gestió del consentiment** | Banner de cookies (Cookiebot) |
Part 2: Privacy by Design - Implementació Pràctica
2.1 Sistema d'anàlisi web sense cookies de tercers
# Desplegar Plausible Analytics - alternativa RGPD-friendly a Google Analytics
# Sense cookies, sense transferències a EUA
version: '3'
services:
plausible:
image: plausible/analytics:v2
container_name: plausible-NOMCOGNOM
ports:
- "8000:8000"
environment:
- BASE_URL=http://localhost:8000
- SECRET_KEY_BASE=$(openssl rand -hex 32)
- DATABASE_URL=postgres://plausible:plausible@plausible-db/plausible
depends_on:
- plausible-db
plausible-db:
image: postgres:15-alpine
container_name: plausible-db-NOMCOGNOM
environment:
- POSTGRES_USER=plausible
- POSTGRES_PASSWORD=plausible
- POSTGRES_DB=plausible
volumes:
- plausible-db-data:/var/lib/postgresql/data
volumes:
plausible-db-data:
// Script d'analítica Privacy by Design (Plausible)
// ✅ No cookies
// ✅ No recull IP
// ✅ No transfereix dades a EUA
// ✅ No requereix consentiment de l'usuari
<script defer data-domain="empresa.cat" src="http://localhost:8000/js/script.js"></script>
# Iniciar Plausible i configurar
docker compose up -d
# Accedir a http://localhost:8000
# Registrar compte → crear domini → afegir l'script al web
2.2 Gestió del consentiment (Banner de cookies)
<!-- Implementació bàsica d'un banner de consentiment RGPD compliant -->
<!DOCTYPE html>
<html>
<head>
<title>TechCat - Gestió RRHH</title>
</head>
<body>
<!-- Contingut de la pàgina -->
<!-- Banner de consentiment RGPD -->
<div id="cookie-banner" style="display:none; position:fixed; bottom:0;
background:#f0f0f0; padding:20px; width:100%; z-index:9999;">
<p>Usem cookies pròpies (necessàries) i de tercers (analítica, únicament
amb el teu consentiment).
<a href="/politica-privacitat">Llegir-ne més</a></p>
<button onclick="acceptCookies()">Acceptar totes</button>
<button onclick="acceptNecessary()">Únicament necessàries</button>
<button onclick="showPreferences()">Configurar</button>
</div>
<script>
// Mostrar el banner si no hi ha consentiment previ
if (!localStorage.getItem('consent_given')) {
document.getElementById('cookie-banner').style.display = 'block';
}
function acceptCookies() {
localStorage.setItem('consent_given', 'all');
localStorage.setItem('consent_date', new Date().toISOString());
document.getElementById('cookie-banner').style.display = 'none';
loadAnalytics(); // Carregar Google Analytics (o similar)
}
function acceptNecessary() {
localStorage.setItem('consent_given', 'necessary_only');
localStorage.setItem('consent_date', new Date().toISOString());
document.getElementById('cookie-banner').style.display = 'none';
// NO carregar analytics
}
function loadAnalytics() {
// Carregar scripts de tercers ÚNICAMENT si hi ha consentiment
var script = document.createElement('script');
script.src = 'https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXX';
document.head.appendChild(script);
}
</script>
</body>
</html>
Reflexió 1
El banner de cookies anterior és RGPD-compliant? Revisa els requisits del RGPD per al consentiment (Art. 7): 1. "Lliure": el botó de rebuig és igual de visible que el d'acceptació? 2. "Específic": cal consentiment per categoria de cookie? 3. "Informat": l'usuari sap exactament quins tercers accediran a la seva informació? 4. "Inequívoc": el silenci (no clicar res) pot considerar-se consentiment?
Part 3: EIPD - Evaluació d'Impacte en la Protecció de Dades
TechCat vol implementar un sistema de reconeixement facial per al control d'accés a les oficines. Realitza la EIPD:
# EIPD: Sistema de Control d'Accés per Reconeixement Facial
**Responsable del tractament**: TechCat S.L.
**Data**: ____________________
**Autor**: NOMCOGNOM
## 1. Necessitat de la EIPD
El tractament de dades biomètriques (reconeixement facial) amb la finalitat
d'identificar persones de manera única és una categoria especial de dades
(Art. 9 RGPD) que requereix EIPD (Art. 35.3.b RGPD).
## 2. Descripció del tractament
**Sistema propsat**: Càmeres a les entrades de l'oficina que identifiquen els
empleats per accedir. Les dades biomètriques s'emmagatzemen en un servidor local.
**Flux de dades**:
1. Càmera captura la imatge → Processament local (template facial)
2. Template es compara amb la base de dades d'empleats
3. Si coincideix: accés concedit + registre d'hora
4. Si no: accés denegat + alerta de seguretat
## 3. Avaluació de necessitat i proporcionalitat
**Alternatives menys invasives analitzades**:
| Alternativa | Invasivitat | Seguretat | Cost |
|-------------|------------|-----------|------|
| Targeta d'accés | Baixa | Mig | Baix |
| PIN + targeta | Baixa | Alt | Baix |
| Biomètria (petjada) | Mig | Alt | Mig |
| Reconeixement facial | Molt alta | Alt | Alt |
**Conclusió**: [L'alumne ha d'analitzar si és necessari o si una alternativa menys invasiva és suficient]
## 4. Riscos identificats
| ID | Risc | Probabilitat | Impacte | Nivell |
|----|------|-------------|---------|--------|
| R1 | Accés no autoritzat a la BD de templates | Baixa | Molt alt | ALT |
| R2 | Falsos positius (empleat no reconegut) | Mitja | Mig | MIG |
| R3 | Falsos negatius (persona no autoritzada entra) | Baixa | Alt | MIG |
| R4 | Fuita de dades biomètriques | Molt baixa | Molt alt | ALT |
| R5 | Discriminació (sistema menys precís per cert grup ètnic) | Mitja | Alt | ALT |
## 5. Mesures de mitigació
| Risc | Mesura tècnica | Mesura organitzativa |
|------|---------------|---------------------|
| R1 | Xifrat de la BD + accés restringit | Auditoria trimestral |
| R4 | Xifratge irreversible dels templates | Protocol de resposta a brecxes |
| R5 | Avaluació del sistema per a tots els grups | Auditoria de bias periòdica |
## 6. Base legal
- Tractament de categories especials (Art. 9): requereix consentiment **explícit**
o necessitat per a finalitats de seguretat en el treball (Art. 9.2.b)
- **Problema legal**: el consentiment dels empleats rarament és "lliure" donat
la relació de poder empresa-empleat
## 7. Consultació prèvia (Art. 36)
Donat que els riscos residuals per al risc R5 (discriminació) son alts,
es recomana consulta prèvia a l'AEPD abans d'implementar el sistema.
## 8. Decisió recomanada
[L'alumne ha de decidir si recomanaria implementar el sistema o no, i per quins motius]
## 9. Signatura del DPO
[Si l'empresa tinguès DPO]
Reflexió 2
La EIPD detecta el risc R5 (discriminació per grup ètnic). Els sistemes de reconeixement facial mostren taxes d'error significativament superiors per a persones de pell fosca (error 35x superior en alguns estudis). Com afecta el RGPD i la nova Llei d'Intel·ligència Artificial de la UE a l'ús d'aquest sistema?
Part 4: Política de Privacitat
# Política de Privacitat - TechCat S.L.
**Data d'actualització**: ____________________
## Qui som?
TechCat S.L. (CIF B-XXXXXXXX), amb domicili a Carrer Pelai 1, 08001 Barcelona,
és responsable del tractament de les teves dades personals.
Pots contactar-nos a privacitat@techcat.cat
## Quines dades recollim i per a quin motiu?
[Completar per a cada tractament del Registre]
## Quants temps guardem les teves dades?
[Completar amb els periódes de retenció]
## Quins drets tens?
- Accés: Saber quines dades tens
- Rectificació: Corregir dades incorrectes
- Supressió: Eliminar les teves dades
- Portabilitat: Rebre les teves dades en format reutilitzable
- Oposició: Oposar-te a certs tractaments
- Limitació: Limitar el tractament en certs casos
Per exercir-los: privacitat@techcat.cat o per carta a la nostra adreça.
Tens dret a presentar una reclamació davant de l'AEPD (aepd.es).
Informe final
Crea el document rgpd_NOMCOGNOM.zip amb:
rgpd-NOMCOGNOM/
├── RAT-TechCat.md (Registre d'activitats de tractament)
├── EIPD-Reconeixement.md (EIPD sistema facial)
├── Politica-Privacitat.md (Política completa)
├── Banner-Cookies.html (Implementació del banner)
└── Reflexions.md (Respostes a les 2 reflexions)
Rúbrica
Vegeu Rúbrica PR5062.