Op tokens gebaseerde authenticatie is een protocol waarmee gebruikers hun identiteit kunnen bevestigen, waarvoor ze een unieke toegangstoken ontvangen. Zolang een token geldig is, hebben gebruikers toegang tot de website of app waarvoor de token is uitgegeven, zodat ze niet elke keer inloggegevens hoeven in te voeren wanneer ze naar dezelfde webpagina, app of andere resource gaan die met die token beveiligd is.
Authenticatietokens werken net zoals een afgestempeld ticket. De gebruiker behoudt toegang zolang de token geldig is. Zodra de gebruiker uitlogt bij een app of deze afsluit, is de token niet meer geldig.
Op tokens gebaseerde authenticatie verschilt van traditionele op wachtwoorden of servers gebaseerde authenticatietechnieken. Tokens bieden een tweede beschermingslaag en beheerders hebben uitgebreide controle over elke actie en transactie.
Maar voor het gebruik van tokens is wel wat kennis over coderen nodig. De meeste ontwikkelaars hebben de techniek snel in de vingers, maar dat geldt niet voor iedereen.
Dus laten we aan de slag gaan zodat u kunt bepalen of het gebruik van tokens iets voor u en uw organisatie is.
De geschiedenis van authenticatietokens
Authenticatie en autorisatie zijn verschillende maar aan elkaar verwante concepten. Voordat er authenticatietokens waren, hadden we wachtwoorden en servers. We werkten met traditionele methoden om ervoor te zorgen dat de juiste mensen op het juiste moment toegang hadden tot de juiste dingen. Maar dat was niet altijd even effectief.
Kijk bijvoorbeeld eens naar wachtwoorden. Daarbij gaat het doorgaans om:
- Gebruikersinvoer. Iemand voert een combinatie van letters, cijfers en symbolen in.
- Geheugen. De gebruiker moet die unieke combinatie onthouden.
- Herhaling. Wanneer de gebruiker toegang tot iets wil hebben, moet het wachtwoord worden ingevoerd.
Diefstal van wachtwoorden komt veelvuldig voor. Een van de eerste gedocumenteerde gevallen van diefstal van wachtwoorden vond overigens al plaats in 1962. Omdat mensen niet al hun wachtwoorden kunnen onthouden, gebruiken ze trucjes zoals:
- Alle wachtwoorden opschrijven. Losse velletjes papier vol wachtwoorden zijn een nachtmerrie voor de beveiliging.
- Hetzelfde wachtwoord overal gebruiken. Mensen gebruiken vaak hetzelfde wachtwoord op verschillende plekken. Als dat wachtwoord ergens wordt ontdekt, maakt dat veel accounts kwetsbaar.
- Slechts kleine wijzigingen aanbrengen. Mensen veranderen één letter of cijfer wanneer gevraagd wordt een wachtwoord bij te werken.
Voor wachtwoorden is ook serverauthenticatie vereist. Telkens wanneer de gebruiker inlogt, legt de computer de transactie vast,wat extra belasting voor het systeemgeheugen betekent.
Tokenauthenticatie is anders.
Met tokenauthenticatie verifieert een tweede service een serververzoek. Wanneer de verificatie is voltooid, stuurt de server een token en reageert de server op het verzoek.
De gebruiker moet dan misschien nog wel één enkel wachtwoord onthouden, maar de token biedt een andere vorm van toegang die veel moeilijker te stelen of te omzeilen is. En de record van de sessie neemt geen ruimte in beslag op de server.
Drie typen authenticatietokens
Alle authenticatietokens zorgen voor toegang, maar elk type werkt net even anders.
Dit zijn drie veelvoorkomende typen authenticatietokens:
- Aangesloten: sleutels, schijven, USB-sticks en andere fysieke devices worden op het systeem aangesloten om toegang te kunnen krijgen. Als u ooit een USB-device of smartcard hebt gebruikt om in te loggen bij een systeem, hebt u een aangesloten token gebruikt.
- Contactloos: een device is dicht genoeg bij een server om ermee te communiceren, maar hoeft niet aangesloten te worden. De zogenaamde "magische ring" van Microsoft is een voorbeeld van dit type token.
- Niet-aangesloten: een device kan op grote afstand communiceren met de server, ook als het niet op een ander device is aangesloten. Als u ooit uw telefoon hebt gebruikt voor tweefactor-authenticatie, hebt u dit type token gebruikt.
In alle drie deze scenario's moet een gebruiker iets doen om het proces te starten. Ze moeten een wachtwoord invoeren of een vraag beantwoorden. Maar zelfs als ze deze voorbereidende stappen perfect uitvoeren, kunnen ze geen toegang krijgen zonder hulp van een toegangstoken.
Tokenauthenticatie in vier eenvoudige stappen
Bij gebruik van een op tokens gebaseerd authenticatiesysteem hoeven gebruikers inloggegevens slechts eenmaal te bevestigen. Daarvoor krijgen ze een token terug dat toegang biedt gedurende een periode die u opgeeft.
Het proces werkt als volgt:
- Verzoek: de persoon vraagt om toegang tot een server of beveiligde resource. Dat kan een login met een wachtwoord zijn of een ander proces dat u opgeeft.
- Verificatie: de server stelt vast dat de persoon toegang moet hebben. Dat kan door het wachtwoord te controleren aan de hand van een gebruikersnaam of door een ander proces dat u opgeeft.
- Tokens: de server communiceert met het authenticatiedevice, zoals een ring, sleutel, telefoon of soortgelijk device. Na verificatie stuurt de server een token naar de gebruiker.
- Opslag: de token bevindt zich in de browser van de gebruiker terwijl het werk doorgaat.
Als de gebruiker toegang wil tot een ander deel van de server, communiceert de token opnieuw met de server. Op basis van de token wordt toegang verleend of geweigerd.
Beheerders stellen beperkingen in voor tokens. U kunt een eenmalige token instellen die onmiddellijk wordt vernietigd wanneer de gebruiker uitlogt. U kunt ook instellen dat de token zichzelf vernietigt aan het eind van een opgegeven periode.