WebAuthn
WebAuthn er browserens API til login med offentlige nøgler. Serveren skal kontrollere browsersvaret, før den accepterer login.
Brug offentlige nøgler i browseren
WebAuthn er en browser-API til at registrere og bruge kryptografiske loginmidler med offentlige nøgler. Passkeys bruger denne grænseflade på nettet. Registrering sker via navigator.credentials.create(), og senere login via navigator.credentials.get(). API’et kræver en sikker kontekst, normalt HTTPS ved almindelig webdrift.
Serverkontrol er en del af login
En fiktiv projektportal laver en ny, tilfældig challenge til et loginforsøg. Browseren sørger for, at der dannes et signeret svar. Identifikatoren rpId knytter handlingen til den tilsigtede tjeneste. Portalserveren kontrollerer blandt andet signaturen med den gemte offentlige nøgle, den forventede challenge og tilknytningen til tjenesten. Den forventede origin, altså webstedets protokol, værtsnavn og port, indgår også i kontrollen.
Det objekt, browseren returnerer, er derfor ikke i sig selv en vellykket adgang til portalen. Applikationen accepterer først login efter serverens kontrol. I denne portal giver en annulleret dialog ikke et bekræftet login; brugerfladen skal vise denne tilstand forståeligt.
WebAuthn organiserer hverken synkronisering mellem enheder eller gendannelse af mistet kontoadgang. Disse forløb kræver egne beslutninger. Efter vellykket login kontrollerer serveren stadig, hvilke projekter kontoen må åbne eller ændre.
Kilder
Relaterede begreber
- PasskeyEn passkey muliggør login med et nøglepar knyttet til tjenesten. Enhedsskift, kontogendannelse og rettigheder er fortsat særskilte opgaver.
- HttpOnly-cookieHttpOnly hindrer scripts i direkte at tilgå cookien. Passende anmodninger kan stadig sende den; session og rettigheder skal fortsat kontrolleres.
- Same-origin-politik (SOP)Same-origin-politikken begrænser browseradgang mellem forskellige origins. En anden sidesti skaber ikke i sig selv en ny origin.
- Princippet om færrest mulige rettighederPrincippet begrænser rettigheder til den nødvendige opgave og dens dataområde. Nødvendigt arbejde er muligt; overflødige beføjelser fjernes.
- Attributbaseret adgangskontrolABAC vurderer adgang ud fra definerede egenskaber og regler. Egenskabernes kilde og aktualitet er en del af designet.
- Rollebaseret adgangskontrolRBAC knytter rettigheder til roller og tildeler personer disse roller. Dataområdet skal være tydeligt ud over rollenavnet.
Dit projekt med ASES
Beskriv dit projekt for os. Vi vender tilbage med en første vurdering.