Hoppa till innehållet

WebAuthn

WebAuthn är webbläsarens API för inloggning med publika nycklar. Servern måste kontrollera svaret innan den godtar inloggningen.

Även känt somWeb Authentication API
Identitet och åtkomst

Använd publika nycklar i webbläsaren

WebAuthn är ett webbläsar-API för att registrera och använda kryptografiska inloggningsuppgifter med publika nycklar. Passkeys använder detta gränssnitt på webben. Registrering sker via navigator.credentials.create() och senare inloggning via navigator.credentials.get(). API:et kräver en säker kontext, vanligen HTTPS vid vanlig webbdrift.

Serverkontroll ingår i inloggningen

En fiktiv projektportal skapar en ny, slumpmässig challenge för ett inloggningsförsök. Webbläsaren ser till att ett signerat svar skapas. Identifieraren rpId knyter åtgärden till den avsedda tjänsten. Portalservern kontrollerar bland annat signaturen med den sparade publika nyckeln, förväntad challenge och kopplingen till tjänsten. Även förväntad origin, alltså webbplatsens protokoll, värdnamn och port, ingår i kontrollen.

Objektet som webbläsaren returnerar är därför inte i sig en lyckad åtkomst till portalen. Applikationen godtar inloggningen först efter serverns kontroll. I denna portal ger en avbruten dialog ingen bekräftad inloggning; gränssnittet måste visa detta tillstånd begripligt.

WebAuthn organiserar varken synkronisering mellan enheter eller återställning av förlorad kontoåtkomst. Dessa flöden kräver egna beslut. Efter lyckad inloggning kontrollerar servern fortfarande vilka projekt kontot får öppna eller ändra.

Källor