Uwierzytelnianie dwuskładnikowe (2FA) to jeden z najbardziej wrażliwych na bezpieczeństwo przepływów w każdej aplikacji. Jeśli rejestracja 2FA, dostarczanie OTP lub odzyskiwanie zawiedzie, użytkownicy mogą całkowicie stracić dostęp do swoich kont.
Skrzynki tymczasowe dają zespołom bezpieczeństwa i QA czysty sposób testowania każdego scenariusza 2FA bez prywatnych numerów telefonów ani adresów email.
Dlaczego testy 2FA mają znaczenie
2FA dodaje krytyczną warstwę bezpieczeństwa, ale też dodaje złożoności. Częste punkty awarii to:
- kody OTP przychodzące z opóźnieniem lub wcale
- emaile rejestracyjne trafiające do spamu
- kody zapasowe generowane niepoprawnie
- przepływy odzyskiwania psujące się po zmianie emaila
- kody czasowe wygasające, zanim użytkownik je wprowadzi
- problemy z synchronizacją między urządzeniami
Pokrewne testy bezpieczeństwa znajdziesz w artykułach Testowanie emaili resetu hasła oraz Kody weryfikacyjne.
Zalecany przepływ testów 2FA
Używaj jednej tymczasowej skrzynki na konto testowe. To izoluje każdy scenariusz i ułatwia debugowanie.
1. Utwórz tymczasową skrzynkę dla konta testowego. 2. Zarejestruj 2FA z użyciem emaila tymczasowego. 3. Zweryfikuj, że email potwierdzający rejestrację przychodzi. 4. Przetestuj logowanie kodem OTP ze skrzynki. 5. Przetestuj generowanie kodów zapasowych i odzyskiwanie. 6. Powtórz z wygasłymi kodami, błędnymi kodami i przepływami wielourządzeniowymi.
Testowanie dostarczania OTP
Najczęstszą awarią 2FA są opóźnione lub brakujące kody OTP. Testuj:
- OTP przychodzi w rozsądnym oknie czasowym (poniżej 30 sekund)
- kod OTP jest ważny przez oczekiwany czas
- przycisk ponownej wysyłki generuje nowy kod i unieważnia stary
- liczne szybkie żądania nie powodują zamieszania
- OTP da się wyodrębnić i jest wyróżniony w skrzynce
TempMailito automatycznie wyróżnia prawdopodobne kody weryfikacyjne. Możesz też użyć Parsera OTP, aby testować wyodrębnianie kodów z tekstu emaila.
Rejestracja i kody zapasowe
Przetestuj pełny cykl życia rejestracji:
- email potwierdzający rejestrację przychodzi z poprawnymi instrukcjami
- kody zapasowe są generowane i wyświetlane
- kody zapasowe działają przy odzyskiwaniu konta
- ponowna rejestracja po wyłączeniu 2FA działa poprawnie
- email rejestracyjny zawiera jasne kolejne kroki
Testowanie przepływów odzyskiwania
Odzyskiwanie to miejsce, gdzie systemy 2FA najczęściej zawodzą. Testuj:
- odzyskiwanie konta z użyciem kodów zapasowych
- odzyskiwanie, gdy użytkownik traci urządzenie z authenticatorem
- odzyskiwanie, gdy zarejestrowany email się zmienił
- okres karencji po rejestracji, zanim 2FA zacznie obowiązywać
- przepływ nadpisania przez administratora lub odzyskiwania przez support
Testy integracji z resetem hasła znajdziesz w artykule Testowanie emaili resetu hasła.
Testy wielourządzeniowe i międzyplatformowe
Użytkownicy korzystają z 2FA na wielu urządzeniach. Testuj:
- dostarczanie OTP w klientach mobilnych a desktopowych
- synchronizację aplikacji authenticatora między urządzeniami
- logowanie z nowego urządzenia uruchamia właściwe wyzwanie 2FA
- przepływy zaufanego urządzenia działają zgodnie z oczekiwaniami
- różnice stref czasowych nie powodują problemów z wygasaniem kodów
Użyj Generatora kodów 2FA, aby generować kody TOTP do testowania 2FA opartej na authenticatorze.
Automatyzacja z API
Dzięki API TempMailito zespoły QA mogą zautomatyzować testy 2FA:
- utwórz tymczasową skrzynkę
- zarejestruj 2FA programistycznie
- czekaj na email OTP lub zdarzenie webhooka
- wyodrębnij kod i dokończ przepływ logowania
- zweryfikuj, że kody zapasowe działają przy odzyskiwaniu
Przydatne narzędzia:
Przypadki brzegowe i kontrole bezpieczeństwa
Systemy 2FA to cenne cele dla atakujących. Testuj:
- ochronę przed brute force przy wprowadzaniu OTP
- limitowanie żądań ponownej wysyłki
- unieważnianie sesji po nieudanych próbach
- odporność rejestracji na phishing
- entropię i unikalność kodów zapasowych
Szersze ramy testów bezpieczeństwa znajdziesz w Checkliście testów emaili dla zespołów SaaS.
Uwagi o bezpieczeństwie
Skrzynki tymczasowe są idealne do QA, stagingu i testów bezpieczeństwa. Nie używaj ich do produkcyjnej rejestracji 2FA, prawdziwego odzyskiwania kont ani przepływów wymagających długoterminowego przechowywania wiadomości.
Podsumowanie
Testy 2FA są kluczowe dla bezpieczeństwa kont. Skrzynki tymczasowe ułatwiają testowanie dostarczania OTP, kodów zapasowych, przepływów odzyskiwania i scenariuszy wielourządzeniowych bez ryzyka dla danych osobowych.
FAQ
Czy można zautomatyzować testy emaili 2FA z API emaila tymczasowego?
Tak. Utwórz tymczasową skrzynkę, zarejestruj konto testowe w 2FA, poczekaj na email OTP lub zdarzenie webhooka, wyodrębnij kod i dokończ przepływ logowania wewnątrz test runnera.
Ile tymczasowych skrzynek potrzebuje zestaw testów 2FA?
Jedną skrzynkę na konto testowe lub scenariusz. Odizolowane skrzynki zapobiegają mieszaniu kodów OTP z różnych testów i ułatwiają odtwarzanie raportów błędów.
Czy powinienem testować 2FA na prawdziwych adresach email pracowników?
Nie. Prawdziwe adresy odsłaniają dane osobowe i zaśmiecają się wiadomościami testowymi. Skrzynki tymczasowe dają nieograniczone czyste tożsamości bez dotykania czyjkolwiek prawdziwej skrzynki.
Jaki jest najczęstszy błąd emailowy 2FA?
Opóźnione lub brakujące dostarczanie OTP. Kody, które przychodzą późno, zbyt wcześnie wygasają lub trudno je znaleźć w treści emaila, powodują większość nieudanych rejestracji 2FA i ticketów supportowych.
