@@PRODUCT@@

Een persoon verwijderen, en wat er blijft

Een klant vraagt je alles weg te halen wat je over hem bewaart. Deze pagina zegt hoe dat in het paneel gaat, wat het weigert, en het ene ding dat blijft.

Geschreven voor: Beheerder

Een klant vraagt je alles weg te halen wat je over hem bewaart. Deze pagina zegt hoe dat in het paneel gaat, wat het weigert, en het ene ding dat blijft.

Personen → de persoon → Privacy. Daar staan twee dingen: het bestand, en de verwijdering.

Eerst: neem de kopie

Download het bestand vóór je verwijdert, niet erna. Het is de weergave van wat je bewaarde, het is wat je stuurt naar wie erom vroeg, en na de verwijdering is het niet opnieuw te maken. De download wordt onder jouw naam vastgelegd.

Verwijderen is de laatste stap, niet de eerste

Druk op Verwijderen… en het paneel telt eerst wat er nog aan vastzit. Zit er iets in de weg, dan zegt het dat en somt het op, met de reden per regel:

  • Lidmaatschappen. Iemands toegang beëindigen is een besluit dat als zodanig wordt vastgelegd. Haal de lidmaatschappen eerst weg via de ledenlijst van de klant; het logboek zegt dan dat een beheerder de toegang heeft beëindigd, en dat is wat er gebeurde.
  • Een lopende eigendomsoverdracht. Rond die af of trek hem in. Een overdracht naar iemand die zo meteen niet meer bestaat moet een antwoord krijgen.
  • Een klantaccount op zijn aanmeldaccount. Dit is de breedste. In het oudere model hangt een klantaccount rechtstreeks aan een aanmeldaccount, en dat weghalen zou het klantaccount — en alles eronder — meenemen. Zeg de hosting eerst op of draag hem over.

Geen van deze drie is een technisch obstakel om omheen te werken. Elk is een besluit dat iemand moet nemen, en het apart nemen is wat er een spoor van achterlaat.

Wat het doet

Zit er niets in de weg, dan toont de dialoog twee getallen — hoeveel regels weggaan en hoeveel blijven — en vraagt hij je het adres van de persoon te typen. Dat is geen typetest; het is bedoeld om je te laten kijken wélke persoon je verwijdert.

Daarna, in één keer:

  • het aanmeldaccount gaat weg, met wachtwoord, tweede factor, passkeys en herstelcodes;
  • elke sessie eindigt, ook een sessie die deze persoon had geopend terwijl hij als iemand anders was aangemeld;
  • meldingen, voorkeuren, push- en Telegram-koppelingen, wachtwoordlinks, API-sleutels die namens hem handelden, doorgeeflinks naar webmail, gesprekken met de assistent en wat die kostten;
  • het persoonsrecord zelf, met het adres erop;
  • bij regels die ergens anders over gaan — een uitrol die hij startte, een pakket dat hij bezit — gaat alleen zijn naam eraf. De regel blijft.

Het gebeurt in één keer of niet. Vóór het definitief wordt leest het paneel elke plek die leeg had moeten zijn opnieuw en telt wat er staat; wat er nog is, draait alles terug en krijgt zijn tabel bij naam genoemd. De bon die je krijgt ís die telling, geen belofte dat er een verwijderopdracht is gegeven.

Gaat het mis, dan is er niets veranderd. Er blijft geen half verwijderde persoon achter om het later mee af te maken: regel wat de melding noemt en draai het opnieuw.

De machinerie nakijken, op de paneelmachine

Twee commando's, en geen van beide verandert iets. Het eerste legt de lijst van plekken waar iemands gegevens staan naast het schema van de database, in beide richtingen — een kolom die het schema wél heeft en de lijst niet, is een plek waar een verwijdering overheen zou stappen. Draai hem na een migratie.

corecp-panel privacy check --config /etc/corecp-panel/panel.yaml
corecp-panel privacy terms --root /srv/corecp/src

Het tweede drukt elke bewaartermijn af die deze versie afdwingt: dezelfde tabel die de klantpagina toont.

Wat er blijft, en waarom

Het auditlogboek houdt het adres dat handelde. Elke handeling van deze persoon blijft in het logboek staan, met zijn adres en het adres waarvandaan hij werkte, zolang het paneel bestaat.

Dat is een besluit, geen omissie. Het logboek is geketend: elke regel draagt een hash van de vorige, en dat is wat er bewijs van maakt in plaats van een bestand. Een regel bewerken breekt de keten, en een beveiligingsverslag dat zijn eigen onderwerp kan bewerken is geen verslag. Een naam in het auditlogboek overleeft de verwijdering dus, wie erom vraagt hoort dat te weten, en de klantpagina zegt het met zoveel woorden.

De verwijdering zelf is de laatste regel die over hem wordt geschreven.

Iemand zonder aanmeldaccount

Eén soort persoon is niet via de Personen-lijst te bereiken: iemand die na de identiteitswissel is uitgenodigd en nooit een oud aanmeldaccount had. De routes accepteren behalve een aanmeld-id ook een persoons-id, dus een beheerder kan hem alsnog exporteren en verwijderen — via de API, of door het id op te zoeken in de ledenlijst van de klant.