Laravel Fortify er en backend-godkjenningspakke for Laravel som støtter tofaktorautentisering (2FA) via tidsbaserte engangspassord (TOTP). Det er fleksibelt og agnostisk for TOTP-klientapplikasjonsbrukere som bruker, noe som betyr at den ikke knytter deg spesifikt til Google Authenticator og kan jobbe med hvilken som helst TOTP-basert autentiseringsapp, inkludert Authy.
hva Laravel Fortify gjør for 2FA
Laravel Fortify gir backend -logikken for å generere 2FA -hemmelige nøkler, lagre dem sikkert, generere gjenopprettingskoder og validere TOTP -symboler under pålogging. Den bruker brukerens to-faktor hemmelige nøkkel for å bekrefte engangspassordet som genereres av enhver autentisator-app som støtter standard TOTP-algoritmen (RFC 6238). Fortify seg selv gir ikke mandat eller begrenser hvilken mobil eller stasjonær app brukeren må bruke.
Bruker autoritet i stedet for Google Authenticator
Authy og Google Authenticator er begge TOTP-baserte autentisator-apper. Begge genererer 6-sifrede koder hvert 30. sekund basert på en hemmelig nøkkel som deles under oppsett (vanligvis ved å skanne en QR-kode). Laravel Fortify fungerer sømløst med enhver klientapp som støtter denne standarden. Derfor kan du absolutt bruke Authy i stedet for Google Authenticator med Laravel Fortify.
Nøkkelpunkter om Authy og Google Authenticator i denne sammenhengen:
- Kompatibilitet: Authy bruker den samme TOTP -standarden som Google Authenticator, så ethvert 2FA -oppsett i Laravel Fortify vil fungere med noen av appene uten endring i Laravel -backend.
-Brukeropplevelse: Authy tilbyr noen fordeler i forhold til Google Authenticator, for eksempel synkronisering av symboler på tvers av enheter (støtte for flere enheter), krypterte sky-sikkerhetskopier og stasjonære apper (historisk sett, for tiden mobilsentrisk), som kan skape en bedre brukeropplevelse.
- Sikkerhet: Authy har alternativer for PIN-beskyttelse og biometrisk sikkerhet på appen, og krypterte sikkerhetskopier, mens Google Authenticator mangler krypterte sky-sikkerhetskopier og synkronisering av flere enheter. Disse funksjonene kan gjøre autoriteten mer brukervennlig og spenstig mot tap av enheter fra brukerens perspektiv.
- Oppsett i Laravel Fortify: Den eneste endringen i Laravel Fortify -implementeringen din vil være å gi QR -koden eller den hemmelige nøkkelen til brukeren for skanning i Authy i stedet for Google Authenticator. Siden begge appene leser samme format, genererer QR -koden FSTIFICE -fungerer ut av boksen med en av appen.
Implementeringshensyn
1. Frontend QR -kode Visning: Når du aktiverer 2FA, genererer du vanligvis en QR -kode basert på den hemmelige nøkkelen. Denne QR -koden kan skannes av Authy eller Google Authenticator -apper. Fronten din trenger bare å gjengi denne QR -koden, og brukeren kan velge sin foretrukne app. Ingen endringer i backend -koden er nødvendig.
2. Bekreftelsestrinn: Ett problem som noen ganger oppstår med Laravel Fortify er at det å muliggjøre 2FA uten å bekrefte den angitte koden, kan låse brukere ut hvis de ikke fullfører oppsettet riktig. Å implementere et bekreftelsestrinn der brukeren legger inn en kode generert av Authy (eller Google Authenticator) etter skanning av QR -koden er en beste praksis. Dette gjelder uavhengig av autentiseringsappen som brukes.
3. Gjenopprettingskoder: FORTIFY gir gjenopprettingskoder for 2FA -bypass hvis brukeren mister tilgangen til autentisator -appen deres. Disse kodene fungerer uavhengig av valg av app (Authy eller Google Authenticator).
Sammendrag av forskjeller fra brukerperspektiv
- AUTHIER FORDELINGER: **
- Support med flere enheter og automatisk synkronisering av 2FA-symboler.
- Krypterte sikkerhetskopiering av skyen for å unngå å miste symboler på enhetstap.
- Valgfri PIN og biometrisk sikkerhet for appen.
- Desktop og nettleser -appstøtte (selv om noen stasjonære apper ble avviklet fra begynnelsen av 2024).
- Push-basert autentisering (men ikke standard TOTP, mer relevant for andre implementeringer).
- Google Authenticator Fordeler: **
- Mer kjent og støttet av mange tjenester.
- enklere app, mindre kompleks støtteinfrastruktur (ingen kontoer, ingen sikkerhetskopier).
- Helt frakoblet etter innledende oppsett (ingen sky -sikkerhetskopier).
Fra et Laravel Fortify Integration Viewpoint, har disse forskjellene ingen konsekvens siden TOTP -kodene fra begge AP -ene blir validert på samme måte av Fortify.
Tilleggsnotater om forsterkning av bruk
Laravel Fortify gir ikke frontend -visninger eller brukergrensesnitt; Det gir backend -tjenester for autentisering. Mange utviklere bruker styrke med Laravel JetStream eller andre UI -sett. Uansett brukergrensesnitt er nøkkelen at Fortify genererer 2FA -hemmeligheten og validerer koder, og overlater valg av autentisator -app til brukeren.
Hvis tilpasning er nødvendig for å forbedre UX eller håndtere kontoen din bedre (legge til et "TO_FACTOR_CONFIRED" -flagg, tilpasse visninger osv.), Kan det implementeres i Fortify -laget, men er uavhengig av valget mellom Authy og Google Authenticator.
Konklusjon
Ja, du kan bruke Authy i stedet for Google Authenticator i Laravel Fortify uten endring som er nødvendig for å implementere backend 2FA -implementeringen. Begge appene bruker den samme TOTP -standarden som er fullt støttet av Fortify. Å velge Authy kan tilby forbedret brukbarhet og sikkerhetskopieringsfunksjoner for brukerne dine, spesielt i scenarier for enhetstap eller tilgang til flere enheter, men fra Laravel-utviklerens synspunkt er integrasjonen fortsatt den samme. Brukere skanner ganske enkelt QR -koden levert av Fortify med sin foretrukne app for å sette opp 2FA.
Denne fleksibiliteten er ved design, slik at Laravel befest kan jobbe med alle apper som genererer standard TOTP -koder, inkludert, men ikke begrenset til Google Authenticator, Authy, Microsoft Authenticator og andre.