· · 8 min leestijd Beginner

Zero trust uitgelegd: de hotel keycard metafoor

Zero trust security begrijpen via een simpele hotel metafoor. Geen jargon, wel duidelijkheid. Perfect om uit te leggen aan niet-technische collega's.

Een hotelgang met deuren die elke sleutelkaart checken, een trol met een loper wordt bij de lift geweigerd door een robot

TL;DR Het oude model is een kasteel. Eenmaal over de muur word je overal binnen vertrouwd. Zero trust is een hotel. Je keycard opent je kamer, de sportschool als je die geboekt hebt, en verder niks, en elke deur checkt die kaart elke keer opnieuw. Hieronder de drie principes, een dag in dat hotel, en waar de keycard in verandert zodra de deuren software zijn.

“Dus wat is dat zero trust nou precies, waar iedereen het over heeft?”

Die vraag krijg ik vaak. Meestal van een manager of een directielid dat een security-budget moet goedkeuren zonder technische achtergrond om op terug te vallen. En de meeste uitleg die ik tegenkom is niet best. Of je verzuipt in het jargon, of het idee is zo ver afgeschuurd dat er niks meer overblijft om vast te pakken.

Dus dit is de versie die ik gebruik. Uitgeprobeerd op m’n ouders, op directieleden en op die ene collega die de firewall nog steeds “de internetbox” noemt. Hij werkt omdat hij begint bij iets wat je zelf in je hand hebt gehad, een hotelkeycard. Vanaf daar loopt hij door tot aan mTLS en identity-aware proxies, en onderweg verandert het idee niet.

Het kasteel dat het vervangt

Voordat het hotel ergens op slaat, moet je weten wat het vervangt.

Traditionele netwerkbeveiliging is een middeleeuws kasteel. Je bouwt een dikke muur (de firewall), graaft er een slotgracht omheen en zet bewakers bij de poort. Wie buiten de muur staat is verdacht. Wie binnenkomt wordt vertrouwd, en mag overal heen en alles doen.

Dat was een prima ontwerp toen:

  • Iedereen in hetzelfde gebouw werkte
  • Alle servers in de kelder stonden
  • “Thuiswerken” betekende één keer per jaar een laptop mee naar huis nemen

Toen gingen mensen vanuit koffietentjes werken en verhuisden de applicaties naar de cloud. De helft van het koninkrijk stond ineens buiten de muur, en toen stelde die muur niet veel meer voor.

Het kasteel heeft één fout waar de rest niet tegenop kan. Wie eenmaal door de poort is, wordt vertrouwd. Een aanvaller die één laptop binnen het netwerk overneemt, kan vrij rondlopen. De meeste verslagen van datalekken die ik gelezen heb, hebben die vorm. Phishing brengt iemand binnen, en daarna beweegt die “lateraal” door een netwerk waar alles alles vertrouwt. Eén gephishte laptop, en de blast radius is het hele kasteel.

Het hotel

Nu het plaatje dat ik zelf gebruik.

Stel je een modern hotel voor. Je checkt in bij de receptie en krijgt een keycard. Die kaart:

  • Opent jouw kamer
  • Opent de sportschool (als je boeking dat omvat)
  • Opent het zwembadgedeelte (als je boeking dat omvat)
  • Opent de parkeergarage (als je een auto hebt geregistreerd)
  • Opent NIET andere gastenkamers
  • Opent NIET de personeelsruimtes
  • Opent NIET de keuken

Elke deur beslist zelf of jij erdoor mag. Dat je “in het hotel” bent, kan die deur niks schelen. Hij wil weten of deze kaart deze deur nu mag openen.

Dat is zero trust in één zin. Elke deur checkt, elke keer, waar je ook staat. De rest van deze post is die zin met meer detail.

Waarom de naam mensen op het verkeerde been zet

Even een zijstap, want de naam doet schade voordat het idee een kans krijgt.

“Zero trust” klinkt alsof je niets en niemand vertrouwt, en dat zou paranoïde en onwerkbaar zijn. “Verifieer alles” was het eerlijke label geweest. “Continue verificatie” als je wilde dat de consultants het mooi vonden. We zitten aan de buzzword vast, dus doen we het ermee.

Wat het in de praktijk betekent:

  • Vertrouw niet op basis van locatie (binnen het netwerk zijn)
  • Vertrouw niet op basis van geschiedenis (je logde ooit in, dus je wordt voor altijd vertrouwd)
  • Verifieer elk toegangsverzoek, elke keer
  • Geef de minimale permissies die het werk nodig heeft

In het hotel ben je een geverifieerde gast met een lijstje deuren, en bij elke deur laat je de kaart zien.

Drie principes, één keycard

Zero trust heeft drie dragende principes, en het hotel dekt ze alle drie.

Verifieer expliciet

Elke deur checkt je kaart, elke keer. Er is geen polsbandje met “vertrouwde gast” erop dat je verder overal doorheen laat. Het zwembad checkt. Je kamer checkt.

In software betekent dat dat elk toegangsverzoek geauthenticeerd en geautoriseerd wordt, waar het ook vandaan komt. Het verzoek vanaf het kantoornetwerk krijgt dezelfde behandeling als dat vanuit het koffietentje.

Minimale privileges

Je kaart opent wat je nodig hebt en verder niks. Basiskamer geboekt? Dan krijg je je kamer en de gemeenschappelijke ruimtes. Executive suite met sportschool? Die ook. Andere gastenkamers krijg je nooit, en de personeelsgang ook niet.

In software krijgen mensen en services de minimale permissies die hun rol vraagt. Een accountant heeft de broncode niet nodig. Een developer de HR-dossiers niet.

Ga uit van een breach

Het hotel is ontworpen vanuit de aanname dat er ooit iemand rondloopt met een kaart die niet van hem is. Daarom checkt elke deur op eigen houtje. Een gestolen kaart opent wat die kaart mocht openen, en de rest van het hotel blijft dicht.

In software ontwerp je alsof de aanvaller al binnen is. Beperk de blast radius, segmenteer het netwerk, kijk wie er met wat praat. Dit is het principe dat mij het meest bezighoudt, omdat het aansluit bij hoe ik naar elk systeem kijk dat ik draai. Falen is de standaard waar ik voor plan. Er gaat ooit iets in die opzet om, en ik wil vooraf weten waar dat dan ophoudt.

Een dag in het hotel

De drie principes zijn de theorie. Ze een dag zien draaien is waar het klikt.

Ochtend. Je gaat naar de sportschool en houdt je kaart tegen de deur. Die stelt drie vragen. Mag deze gast de sportschool in, is de boeking nog geldig, is de sportschool nu open? Drie keer ja, dus hij gaat open.

Middag. Terug op je kamer wil je roomservice. Je belt, en ze vragen je kamernummer én een beveiligingscode van je incheckbewijs. Nummerweergave alleen vinden ze niet genoeg.

Namiddag. Je probeert de printer van het businesscenter. Je authenticeert opnieuw, kaart plus een PIN die je bij het inchecken hebt ingesteld. Voor sommige dingen is de kaart hebben niet voldoende.

Avond. Je boeking eindigt om 18:00, maar je vlucht gaat om 20:00. Je vraagt om late checkout en de receptie verlengt je toegang tot 19:00. Om 19:01 doet je kaart het nergens meer. Kamer, sportschool, alles.

Eén dag, en het hele model is voorbijgekomen. Continue verificatie, toegang met een eindtijd, een zwaardere check voor het gevoelige spul, en intrekking op het moment dat de toegang verloopt. Niemand hoefde kaarten op te halen.

Wat het niet is

Een paar misverstanden, want die komen in bijna elk gesprek dat ik hierover voer voorbij.

“Dus geen wachtwoorden meer?” Je authenticeert nog steeds. Alleen zorgvuldiger, en vaak met meer dan één factor.

“Dus overal een VPN?” Een VPN is de kasteelpoort. Kom je erdoor, dan word je binnen vertrouwd. Zero trust vervangt de VPN vaak helemaal door een check per bron, en BeyondCorp van Google is het canonieke voorbeeld van precies dat.

“Dat is voor grote bedrijven.” De principes schalen omlaag. Je thuisnetwerk kan er ook op draaien.

“Welk product moet ik kopen?” Leveranciers verkopen je graag een “zero-trust-oplossing”, maar er valt niks te installeren. Het is een aanpak waar je naartoe bouwt, deur voor deur.

“Dus we zetten het volgend kwartaal aan?” De overstap naar zero trust kost tijd. Het is een migratie, en een trage. Een schakelaar is er niet.

Waar het hotel ophoudt en de software begint

Hier loopt de metafoor vast en nemen de echte systemen het over.

In een echte zero-trust-opzet zijn de deuren software. Een muur is er niet meer. Elk verzoek draagt bewijs van wie of wat het doet, en elke bron beslist zelf of dat bewijs goed genoeg is.

  • De keycard wordt een cryptografische identiteit. Voor services betekent dat vaak SPIFFE-identiteiten en kortlevende certificaten in plaats van een langlevend gedeeld geheim.
  • De deurcheck wordt mTLS, waarbij beide kanten bewijzen wie ze zijn voordat er één byte applicatiedata beweegt.
  • “Elke deur checkt op eigen houtje” wordt microsegmentatie. In Kubernetes is dat een NetworkPolicy per workload, afgedwongen door een CNI als Cilium, zodat een gecompromitteerde pod niks kan bereiken wat hij niet expliciet mocht bereiken.
  • De late checkout die om 19:01 verloopt wordt kortlevende credentials van iets als Vault, zodat toegang op een timer afloopt in plaats van te blijven hangen tot iemand eraan denkt hem in te trekken.

Niks daarvan verandert het idee. Het is hetzelfde hotel met cryptografie waar het plastic zat, en elke bullet is één deur.

Dit is ook waarom zero trust zo goed past bij hoe ik over soevereiniteit denk. Zodra je het netwerk niet meer vertrouwt en elk verzoek gaat verifiëren, móet je weten wie er met wat praat, en waarom. Er is geen vaag “binnen” meer om door te wuiven. Elke verbinding is iets wat je kunt inspecteren en iets wat je kunt intrekken, en waarom ik niks draai wat ik niet kan inspecteren staat in Sovereign Infrastructure.

De versie voor in de vergadering

Vraagt iemand je wat zero trust is, probeer dan dit:

“Traditionele security is een kasteel. Ben je eenmaal binnen de muren, dan word je overal vertrouwd. Zero trust is een hotel. Je hebt een keycard, maar elke deur checkt nog steeds of jij erdoor mag. Binnen zijn betekent niet dat je overal bij kunt.”

Dat is het hele verhaal. Eronder zitten identity providers, microsegmentatie, mTLS en monitoring, maar die voeren allemaal die ene zin uit.

M’n ouders kregen het hotel en geen van de bullets. Alles voorbij het hotel is voor wie terugkomt met een tweede vraag.