SMS API / MFA och 2FA

Ett extra verifieringssteg via SMS.

Låt användaren ange sitt lösenord och därefter en tidsbegränsad engångskod som er server skickar via SMS API. SMS är ett brett tillgängligt extra lager, men inte ett phishing-resistent alternativ.

Serverbaserat flöde

Från lösenord till verifierad session.

Webbläsaren ska aldrig anropa SMS API:et direkt eller få tillgång till API-nyckeln. Er backend äger hela kodens livscykel.

  1. 01

    Kontrollera första faktorn

    Verifiera användarens lösenord på servern. Starta inte SMS-steget för ett okänt eller felaktigt konto.

  2. 02

    Skapa och lagra säkert

    Generera koden med en kryptografiskt säker slumptalsgenerator. Lagra endast en hash tillsammans med användare, syfte, utgångstid och antal försök.

  3. 03

    Skicka via SMS API

    Backend skickar koden med sin skyddade API-nyckel. Sätt kort giltighetstid, undvik känslig information i texten och knyt koden till en specifik inloggning.

  4. 04

    Verifiera en gång

    Jämför den inskickade koden på servern. Förbruka den efter godkänd kontroll och ogiltigförklara den när tiden eller försökstaket har passerats.

Säkerhetskontroller

Skydda både kod och sändningsflöde.

Kort giltighet och engångsbruk

Använd en kort, tydligt kommunicerad giltighetstid. En verifierad, ersatt eller utgången kod ska aldrig kunna användas igen.

Försökstak

Begränsa antalet felaktiga kodförsök per utmaning. Lås eller ersätt utmaningen när gränsen nås.

Rate limiting

Begränsa begäran och omsändningar per konto, telefonnummer, IP-adress och tidsfönster. Lägg till progressiv väntetid där det passar.

Säker kodhantering

Använd kryptografiskt säker slump, hasha koden i lagring och logga aldrig kod, API-nyckel eller fullständigt telefonnummer.

Leveransstatus

Följ leveransrapporter via webhook för drift och felsökning. Levererad betyder inte att rätt person har läst SMS:et eller autentiserats.

Återställning och alternativ

Erbjud säkra återställningsvägar och låt användare registrera en starkare metod. Behandla byte av telefonnummer som en känslig åtgärd.

Integrationsprincip

Hemligheter stannar på servern.

Klienten ber er applikation starta en MFA-utmaning. Backend kontrollerar policy, genererar koden, sparar dess hash och anropar SMS API. Vid verifiering kontrollerar backend kod, utgångstid och försök innan en session utfärdas.

  1. 01
    KlientBegär MFA-utmaning
  2. 02
    ApplikationsserverPolicy, kod, hash och försök
  3. 03
    iP.1 SMS APISkickar SMS och rapporterar status
  4. 04
    ApplikationsserverVerifierar koden och skapar session

Vanliga frågor

MFA och 2FA via SMS.

Vad är skillnaden mellan MFA och 2FA?

2FA använder exakt två faktorer. MFA kan använda två eller fler. Ett vanligt SMS-flöde kombinerar något användaren vet, lösenordet, med tillgång till telefonnumret som tar emot en engångskod.

Är SMS-baserad MFA phishing-resistent?

Nej. SMS-koder kan utsättas för phishing, social manipulation och kapning av telefonnummer. Passkeys och säkerhetsnycklar ger phishing-resistent autentisering, medan autentiseringsappar också är ett starkare val för många användningsfall.

Hur länge ska en SMS-kod vara giltig?

Använd en kort giltighetstid som passar användarflödet och leveransförhållandena, vanligtvis några minuter. Koden ska dessutom vara förbrukad efter en lyckad verifiering och sluta gälla efter för många felaktiga försök.

Ska SMS API anropas från webbläsaren eller appen?

Nej. Anropa API:et från er backend så att API-nyckeln, kodgenereringen, lagringen, rate limiting och verifieringen hålls på servern.

Betyder leveransstatus att användaren är verifierad?

Nej. En leveransrapport beskriver meddelandets transportstatus. Användaren är verifierad först när er server har godkänt en giltig, oanvänd kod för rätt utmaning.

Kom igång

Bygg SMS-steget med ett API-konto.

Läs dokumentationen, prova en payload lokalt och skapa sedan ett konto för er serverintegration.

Välj vilka ändamål du samtycker till. Nödvändig lagring används bara för att komma ihåg ditt val.