WebAuthn
WebAuthn är webbläsarens API för inloggning med publika nycklar. Servern måste kontrollera svaret innan den godtar inloggningen.
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
Relaterade begrepp
- PasskeyEn passkey möjliggör inloggning med ett tjänstebundet nyckelpar. Enhetsbyte, kontoåterställning och rättigheter behöver fortfarande hanteras.
- HttpOnly-kakaHttpOnly hindrar skript från direkt åtkomst till kakan. Förfrågningar som matchar kan fortfarande skicka den; session och rättigheter måste kontrolleras.
- Same-origin-policy (SOP)Same-origin-policyn begränsar webbläsaråtkomst mellan olika origins. En annan sidväg skapar inte i sig en ny origin.
- Principen om minsta behörighetPrincipen begränsar rättigheter till den nödvändiga uppgiften och dess dataområde. Nödvändigt arbete är möjligt; överflödiga befogenheter tas bort.
- Attributbaserad åtkomstkontrollABAC bedömer åtkomst utifrån definierade egenskaper och regler. Egenskapernas källa och aktualitet är en del av utformningen.
- Rollbaserad åtkomstkontrollRBAC kopplar rättigheter till roller och tilldelar personer dessa roller. Dataområdet måste vara tydligt utöver rollnamnet.
Ditt projekt med ASES
Beskriv ditt projekt för oss. Vi hör av oss med en första bedömning.