BDAR ir duomenų apsauga
Privatumo užtikrinimas projektavimo stadijoje (Privacy-by-Design)
qr3.app yra sukurtas nuo pat pradžių laikantis BDAR reikalavimų:
- IP adresų pseudoniminimas — IP adresai Edge Worker iškart paverčiami HMAC-SHA-256 UTC dienos pseudonimais. Tikrasis IP adresas niekada nesaugomas; pseudonimas lieka asmens duomenimis.
- Duomenų mažinimas — renkami tik tie duomenys, kurie yra būtini paslaugos veikimui.
Privatumo API
Duomenų suvestinė (BDAR 15 str.)
GET /v1/account/privacy — grąžina visų saugomų duomenų apžvalgą.
curl https://qr3.app/v1/account/privacy \ -H "Authorization: Bearer qr3_sk_..."Response:
{ "data": { "workspace_id": "ws_xxx", "stored_data": { "qr_codes": { "count": 42, "oldest_at": "2026-03-01T..." }, "scan_records": { "count": 15000, "oldest_at": "2026-03-01T..." }, "api_keys": { "count": 2 }, "webhooks": { "count": 1 } }, "your_rights": { "access": "GET /v1/account/export", "erasure": "DELETE /v1/account", }, "data_processing": { "legal_basis": "Contract performance (Art. 6(1)(b) GDPR)", "sub_processors": [ { "name": "Cloudflare, Inc.", "purpose": "CDN, edge computing, database" } ] } }}Duomenų eksportavimas (BDAR 20 str. — duomenų perkeliamumas)
GET /v1/account/export — atsisiunčia visus duomenis kaip JSON failą.
curl https://qr3.app/v1/account/export \ -H "Authorization: Bearer qr3_sk_..." \ -o meine-daten.jsonEksportuojamame faile yra:
- Visi QR kodai (įskaitant ištrintus)
- Agreguota nuskaitymų statistika (be neapdorotų IP maišos reikšmių)
- Sukūrimo ir keitimo laiko žymos
Paskyros trynimas (BDAR 17 str. — teisė būti pamirštam)
DELETE /v1/account — neatšaukiamas visų duomenų ištrynimas.
curl -X DELETE https://qr3.app/v1/account \ -H "Authorization: Bearer qr3_sk_..."Kas nutinka:
- Visi QR kodai yra pašalinami minkštuoju būdu (soft-delete) (archyvuojami)
- Visi nuskaitymo įrašai yra visiškai ištrinami (PII)
- Visi API raktai yra anuliuojami
- KV talpykla (cache) yra anuliuojama
Sutikimų valdymas
GET /v1/account/privacy/consents — gauti esamus sutikimus.
POST /v1/account/privacy/consents — atnaujinti sutikimus.
# Aktuelle Einwilligungen abrufencurl https://qr3.app/v1/account/privacy/consents \ -H "Authorization: Bearer qr3_sk_..."
# Marketing-E-Mails deaktivierencurl -X POST https://qr3.app/v1/account/privacy/consents \ -H "Authorization: Bearer qr3_sk_..." \ -H "Content-Type: application/json" \ -d '{ "marketing_emails": false, "analytics": true, "product_updates": true }'Sutikimų laukai:
| Laukas | Numatytasis | Aprašymas |
|---|---|---|
marketing_emails | false | Naujienlaiškiai ir reklaminiai el. laiškai |
analytics | true | Agreguota naudojimo statistika |
product_updates | true | Produkto naujienos ir pakeitimų žurnalai (changelogs) |
Techninis BDAR įgyvendinimas
IP adresų pseudoniminimas (BDAR 25 str.)
HTTP užklausa → Cloudflare Edge Worker ↓CF-Connecting-IP antraštė → HMAC-SHA-256(IP_HASH_SALT, paskirtis, UTC diena, IP) ↓ip_hash (dienos pseudonimas) → D1 duomenų bazė ↓Tikrasis IP adresas niekada nesaugomasIP_HASH_SALT yra ilgalaikė pagrindinė paslaptis; paskirtis ir UTC diena automatiškai išveda atskirus dienos pseudonimus. Skirtingų UTC dienų pseudonimai nėra tiesiogiai vienodi, tačiau paslapties turėtojas gali konkrečiai dienai perskaičiuoti žinomą IP kandidatą. Nenaudojama nei KV dienos druska, nei rankinė kasdienė rotacija.
Duomenų saugojimo laikotarpis (automatizuotas)
| Planas | Saugojimo laikotarpis |
|---|---|
| Visi planai | 90 dienų |
Duomenų tvarkymo sutartis (DPA) su subrangovais
Cloudflare, Inc. tvarko duomenis kaip duomenų tvarkytojas. Duomenų tvarkymo sutartis (DPA) pateikiama adresu cloudflare.com/cloudflare-customer-dpa.
Cloudflare tvarko duomenis ES serveriuose (Frankfurte). Galioja standartinės sutarčių sąlygos (SCC) pagal BDAR 46 str.
Kontaktai
- Duomenų apsaugos pareigūnas: [email protected]
- Duomenų tvarkymo sutartis (DPA): [email protected] (pagal užklausą)
- Privatumo politika: qr3.app/de/legal/datenschutz