Naar de inhoud

WebAuthn

WebAuthn is de browser-API voor aanmelden met publieke sleutels. De server moet het browserantwoord controleren voordat hij de aanmelding accepteert.

Ook bekend alsWeb Authentication API
Identiteit en toegang

Publieke sleutels in de browser gebruiken

WebAuthn is een browser-API voor het registreren en gebruiken van cryptografische aanmeldmiddelen met publieke sleutels. Passkeys gebruiken deze interface op het web. Registratie verloopt via navigator.credentials.create(); later aanmelden via navigator.credentials.get(). De API vereist een veilige context, bij normaal webgebruik doorgaans HTTPS.

Servercontrole hoort bij aanmelden

Een fictief projectportaal maakt voor een aanmeldpoging een nieuwe, willekeurige challenge. De browser laat daarop een ondertekend antwoord maken. De identificatie rpId koppelt de handeling aan de bedoelde dienst. De portaalserver controleert onder meer de handtekening met de opgeslagen publieke sleutel, de verwachte challenge en de koppeling aan de dienst. Ook de verwachte origin, bestaande uit protocol, hostnaam en poort van de website, hoort bij de controle.

Het object dat de browser teruggeeft, is op zichzelf dus geen geslaagde toegang tot het portaal. De applicatie accepteert aanmelden pas na servercontrole. In dit portaal levert een geannuleerd dialoogvenster geen bevestigde aanmelding op; de interface moet die toestand begrijpelijk tonen.

WebAuthn regelt geen synchronisatie tussen apparaten of herstel van verloren accounttoegang. Deze processen vragen eigen keuzes. Ook na geslaagd aanmelden controleert de server nog welke projecten het account mag openen of wijzigen.

Bronnen