Je browser doet het werk
Als je deze app opent, haalt je browser één keer de pagina op. Daarna gebeurt alles op je eigen computer of telefoon. Er is geen server die meerekent, meekijkt of iets bewaart.
Wat je invoert, blijft bij jou
Tekst die je typt of plakt en bestanden die je opent, worden niet verstuurd. Sluit je het tabblad, dan is je invoer weg.
Werkt ook zonder internet
De app wordt op je apparaat bewaard, zodat hij ook zonder internet werkt. Daarbij wordt alleen de app zelf bewaard, niet wat je invoert.
Wat deze app onthoudt
- Niets. Deze pagina heeft geen invoer en geen instellingen.
Wat de app onthoudt, staat alleen in jouw browser op dit apparaat. Wis je je browsergegevens, dan is het ook weg.
Wat er níet is
- Geen account en geen inlog.
- Geen reclame, geen tracking en geen trackingcookies.
- Geen verbindingen met andere websites.
Eén ding gaat wel via internet
Het openen van de pagina en het ophalen van updates. Net als bij elke website ziet de partij die de pagina aanbiedt dan je IP-adres: het adres van je internetverbinding. Wat je daarna in de app doet, ziet die partij niet.
Opbouw
- Statische pagina op Netlify, zonder backend, API of database aan de serverkant.
- Code, lettertypen en bibliotheken zitten in de pagina zelf of staan op hetzelfde domein. Er worden geen scripts of fonts van andere domeinen geladen.
De browser blokkeert verkeer naar buiten
De server stuurt een Content-Security-Policy mee. Daarin staan onder andere:
default-src 'none': niets laden, tenzij het expliciet is toegestaan.
connect-src 'self': fetch, XHR en WebSocket alleen naar het eigen domein, nooit naar een ander. Nodig voor de offline-versie (de service worker haalt de eigen bestanden op).
form-action 'none': formulieren kunnen nergens heen worden verstuurd.
Dit dwingt de browser af, los van wat de code van de app doet. Ook een fout of een gekaapte bibliotheek kan zo niets versturen.
Opslag
- Onthoudt de app iets, dan alleen in
localStorage, met sleutels die beginnen met app-index:. Er staan alleen instellingen in, nooit invoer.
- Geen cookies.
localStorage is per domein en per browser, en wordt nooit naar de server verstuurd.
- Wissen: via de browserinstellingen (sitegegevens voor dit domein).
Andere maatregelen
Referrer-Policy: no-referrer: andere sites zien niet dat je hiervandaan komt.
Permissions-Policy: camera, microfoon, locatie en vergelijkbare functies staan uit.
- Invoervelden zonder spellingcontrole en automatisch aanvullen. Uitgebreide spellingcontrole in sommige browsers stuurt tekst naar een online dienst.
- Browservertaling staat uit (
translate="no"), omdat die de paginatekst naar een vertaaldienst stuurt.
Wat de hostingpartij ziet
Netlify ontvangt bij het laden de gewone gegevens van een webverzoek: IP-adres, browser en de opgevraagde pagina.
Offline
Een service worker bewaart alleen de eigen bestanden van de app in de browsercache. Daarna is er alleen nog contact met de server om te kijken of er een nieuwe versie is.
Zelf controleren? Open de ontwikkelaarstools van je browser (F12), ga naar het tabblad Netwerk en gebruik de app. Er verschijnen geen verzoeken naar andere domeinen.
Persoonsgegevens
Persoonsgegevens zijn alle gegevens die over een persoon gaan of naar iemand te herleiden zijn, zoals een naam, een adres of een IP-adres in combinatie met andere gegevens.
Wie verwerkt je gegevens?
Omdat alles in je browser gebeurt, ontvangt de maker van de app je invoer niet. Werk je met persoonsgegevens van anderen, bijvoorbeeld een tabel met namen van klanten, dan blijf jij of je organisatie verantwoordelijk voor die verwerking. De app verandert dat niet, maar zorgt wel dat er geen extra partij bij komt die de gegevens ontvangt.
Zo min mogelijk gegevens
De AVG vraagt om niet meer gegevens te verwerken dan nodig (dataminimalisatie, artikel 5) en om privacy al in het ontwerp mee te nemen (privacy by design en by default, artikel 25). Deze apps zijn daarom zo gebouwd dat er standaard niets naar buiten gaat en alleen instellingen worden onthouden.
Cookies en vergelijkbare opslag
Voor trackingcookies en vergelijkbare technieken is toestemming nodig. Deze apps gebruiken die niet. Opslag die alleen dient om de app te laten werken zoals jij vraagt, zoals je instellingen onthouden, is functioneel.
Het IP-adres
Een IP-adres kan een persoonsgegeven zijn, maar is dat niet altijd. Het is het enige gegeven dat de hostingpartij van je ziet, bij het laden van de pagina.
Het pijltje bij een kop opent de bijbehorende pagina van de Autoriteit Persoonsgegevens. Dit is uitleg over hoe deze apps werken, geen juridisch advies.