Codetoken, smartcard of FIDO-sleutel: wat een VPN accepteert
Een codesleutel, een smartcard en een FIDO-sleutel worden allemaal hardwaretokens genoemd. Ze nemen deel aan verschillende stromen, en slechts één ervan bevat een certificaatsleutel.
Drie apparaten met dezelfde connector en dezelfde sleutelring nemen deel aan drie losstaande uitwisselingen. Eén toont een code die een server controleert, één ondertekent met een sleutel die het apparaat nooit verlaat, en één keurt een browseraanmelding goed via een eigen protocol. De vraag of een VPN certificaten of hardwaretokens moet gebruiken vergelijkt dus een formaat met een apparaatklasse. Het antwoord hangt ervan af welke van de drie u werkelijk hebt gekocht.
Benoem het bewijs vóór het apparaat
Een eenmalige codetoken produceert een waarde die een authenticatiedienst via zijn eigen mechanisme valideert. De VPN kan die dienst bereiken via RADIUS of een gefedereerde identiteitsprovider, en de token hoeft nooit iets te bevatten dat bij de tunnel zelf hoort. Wat het bewijst, is dat de persoon het apparaat heeft dat de code genereert. Over de machine waarop de code is getypt, bewijst het niets.
Een token in smartcardstijl slaat een privésleutel op en voert de ondertekeningsbewerking op verzoek uit, zo wordt een certificaatidentiteit bewezen zonder de sleutel te exporteren. Het certificaat ernaast is openbaar materiaal, en dat certificaat uitgeven is een heel andere handeling dan de sleutel uitgeven.
Een FIDO-sleutel spreekt weer een derde protocol. Een browseraanmelding kan hem bij de identiteitsprovider gebruiken, maar succes op die website betekent niet dat dezelfde sleutel via de smartcardinterface van een VPN-client verschijnt.
Sommige apparaten implementeren meerdere van deze toepassingen naast elkaar, en de leveranciersdocumentatie vermeldt de modi juist daarom apart. Het is geen bewijs dat elke sleutel op de markt elke modus ondersteunt.
Hardware beschermt de sleutel, niet het beleid
Een pincode op een certificaatgebaseerd apparaat machtigt meestal lokaal gebruik van de sleutel, en het is niet het wachtwoord dat het VPN-accountsysteem controleert. Richtlijnen zoals de NIST-richtlijnen over authenticatoren noemen die lokale invoer een activeringsgeheim, los van de authenticator zelf. De zekerheid komt uit het hele ontwerp, niet uit het aantal prompts op het scherm.
Inschrijving, vernieuwing en verwijdering blijven hoe dan ook bij de identiteitseigenaar. Iemand beslist nog steeds wie zich mag inschrijven, koppelt het bewijs aan de juiste persoon en maakt vervanging mogelijk wanneer een apparaat verloren gaat. Een nieuwe sleutel kopen trekt de oude niet in.
Beschrijf de aanmeldingsceremonie voordat u hardware kiest: typt de gebruiker een code, ontgrendelt hij een ondertekeningssleutel of keurt hij een browserprompt goed? Elk antwoord impliceert een andere client, een andere gateway-instelling en een ander script voor de helpdesk.
Waar de stromen in de praktijk uiteengaan
Een codetoken is het eenvoudigst uit te rollen en het zwakst tegen een overtuigende nagemaakte pagina, omdat een getypte code in realtime kan worden doorgegeven. Een certificaatgebaseerde sleutel weerstaat die aanvalsklasse en kost meer om te beheren, omdat uitgifte en intrekking deel van de dienst worden. Een FIDO-sleutel hoort bij de webaanmelding en hangt volledig af van of de identiteitsprovider hem voor deze toepassing ondersteunt.
Gemengde omgevingen zijn gebruikelijk en niet automatisch verkeerd: een certificaat voor de tunnel plus een codetoken voor de beheerconsole is een samenhangende splitsing, mits beide tegen dezelfde identiteit zijn ingeschreven. Wat breekt, is een splitsing die niemand heeft gedocumenteerd, waarbij de helpdesk niet kan zeggen welke factor een gebruiker mist.
Maak de beslissing concreet
Schrijf de ceremonie op als een reeks stappen die een echte gebruiker uitvoert, en controleer dan of de client, de gateway en de identiteitsprovider die reeks allemaal ondersteunen. Een mismatch verschijnt meestal bij de laatste stap, waar de client het apparaat helemaal niet kan aanspreken.
Bevestig daarna wat er gebeurt als het apparaat verloren gaat of het certificaat verloopt. Als dat antwoord niet is opgeschreven, heeft de uitrol een gat dat op een maandagochtend wordt ontdekt.
pkcs11-tool --list-slots
pkcs11-tool --list-objects --type cert