Bezpieczne i płynne działanie kluczy dostępu: lista kontrolna wdrożenia

Klucze dostępu mają zrewolucjonizować proces logowania, oferując prostszą, szybszą i bezpieczniejszą alternatywę dla haseł. Ta lista kontrolna przeprowadzi Cię przez najważniejsze aspekty wdrażania kluczy dostępu, aby zapewnić optymalne wrażenia użytkowników.

Jak korzystać z tej listy kontrolnej

Ta lista kontrolna jest przeznaczona dla deweloperów i zespołów produktowych, którzy implementują klucze dostępu w swoich procesach uwierzytelniania. Pozwala na:

  • Sprawdź, czy Twoja implementacja jest zgodna ze sprawdzonymi metodami dotyczącymi interfejsu użytkownika klucza dostępu opisanymi w tych artykułach.
  • Określ elementy wymagane i opcjonalne, które poprawiają użyteczność, bezpieczeństwo i zgodność.
  • Sprawdź implementację podczas tworzenia i przed wdrożeniem.
  • Zgodność ze sprawdzonymi metodami, które ułatwiają użytkownikom korzystanie z urządzenia i współdziałanie systemów.

Dzięki temu użytkownicy będą mogli korzystać z usługi w sposób płynny i bezpieczny.

Rejestracja kluczy dostępu

Aby płynnie przejść z haseł na klucze dostępu w swojej witrynie, musisz mieć zaawansowane funkcje rejestracji kluczy dostępu. Aby w swojej witrynie utworzyć funkcję rejestracji kluczy dostępu, postępuj zgodnie z instrukcjami opisanymi w artykule Tworzenie kluczy dostępu do logowania bez hasła. Oprócz podstawowych funkcji rejestracji klucza dostępu sprawdź te kwestie:

✅ W przypadku tworzenia promowanego klucza dostępu jako wartość załącznika uwierzytelniania do przekazania do navigator.credentials.create() użyj wartości "platform".

  • Zapewnij zoptymalizowany i bezproblemowy proces tworzenia kluczy dostępu dla osób, które tworzą je w reakcji na prośbę.

✅ Przed zezwoleniem na utworzenie klucza dostępu zweryfikuj użytkownika, korzystając z najsilniejszej dostępnej metody uwierzytelniania.

  • Jest to ważne, aby uniemożliwić atakującemu utworzenie klucza dostępu na przejętym koncie.

✅ Zapobiegaj tworzeniu duplikatów kluczy dostępu od tego samego dostawcy, używając excludeCredentials.

  • Wielu dostawców kluczy dostępu obsługuje tylko 1 klucz dostępu na konto i identyfikator RP. Unikaj tworzenia zduplikowanych treści.

Użyj identyfikatora AAGUID, aby zidentyfikować dostawcę klucza dostępu i nazwać dane logowania użytkownika.

  • Powiązanie klucza dostępu z dostawcą kluczy dostępu to intuicyjny sposób przedstawiania danych logowania tam, gdzie jest to możliwe.

✅ Sygnalizuje, jeśli próba rejestracji klucza dostępu zakończy się niepowodzeniem z powodu błędu PublicKeyCredential.signalUnknownCredential().

  • Stracone klucze mogą powodować zamieszanie. Poinformuj dostawcę kluczy dostępu, jeśli serwer nie zarejestrował klucza dostępu.

Wyślij powiadomienie do użytkownika po utworzeniu i zarejestrowaniu kodu dostępu na jego koncie.

  • Upewnij się, że użytkownik jest świadomy tworzenia klucza dostępu, zwłaszcza gdy jest on tworzony przez kogoś innego.

Uwierzytelnianie za pomocą kluczy dostępu

Zapewnienie obsługi zarówno użytkowników haseł, jak i kluczy dostępu bez minimalnego oporu może być trudne. Aby w swojej witrynie utworzyć funkcję autouzupełniania formularza klucza dostępu, postępuj zgodnie z instrukcjami podanymi w artykule Logowanie za pomocą klucza dostępu przez autouzupełnianie formularza. Oprócz podstawowych funkcji uwierzytelniania za pomocą klucza dostępu warto sprawdzić te kwestie:

✅ Zezwalaj użytkownikom na logowanie się za pomocą klucza dostępu za pomocą funkcji autouzupełniania formularzy.

  • Jeśli Twoja witryna przechodzi z haseł na klucze dostępu, najlepszym sposobem na dostosowanie się do potrzeb obu grup użytkowników jest korzystanie z funkcji automatycznego wypełniania formularzy w przeglądarce.

✅ Sygnalizuje, gdy na zapleczu nie znaleziono odpowiednich danych logowania do klucza dostępu (PublicKeyCredential.signalUnknownCredential()).

  • Stracone klucze mogą powodować zamieszanie. Poinformuj dostawcę klucza dostępu, który klucz jest nieużyteczny, aby mógł go usunąć.

✅ Zachęcaj użytkowników do ręcznego utworzenia klucza dostępu, jeśli nie został on utworzony po zalogowaniu.

  • Jeśli użytkownik nie utworzył jeszcze klucza dostępu, zachęć go do jego utworzenia.

Automatycznie twórz klucz dostępu (warunkowe tworzenie) po zalogowaniu się użytkownika za pomocą hasła (i drugiego czynnika).

  • przyspieszyć wdrażanie kluczy dostępu przez użytkowników;

✅ Wyświetlić prośbę o utworzenie lokalnego klucza dostępu jeśli użytkownik zalogował się przy użyciu klucza dostępu na różnych urządzeniach.

  • Utworzenie lokalnego klucza dostępu ułatwi użytkownikowi logowanie się bez konieczności skanowania kodu QR.

Przesłać listę dostępnych kluczy dostępuzaktualizowanych danych użytkownika (nazwa użytkownika, wyświetlana nazwa) do dostawcy po zalogowaniu

  • Synchronizacja listy kluczy dostępu i danych użytkownika między serwerem a dostawcą kluczy dostępu zwiększa wygodę użytkowników.

Zarządzanie kluczami dostępu

Dzięki temu użytkownicy lepiej zrozumieją klucze dostępu i będą mogli nimi lepiej zarządzać. Aby dodać do swojej witryny funkcję zarządzania kluczami, postępuj zgodnie z instrukcjami opisanymi w artykule Pomaganie użytkownikom w skutecznym zarządzaniu kluczami. Sprawdź te kwestie:

✅ Zezwalaj użytkownikom na zarządzanie kluczami dostępu na stronie zarządzania kluczami dostępu.

  • Utwórz centralne miejsce, w którym użytkownicy mogą zarządzać kluczami dostępu.

✅ Obsługa rejestrowania wielu kluczy dostępu.

  • Możliwość rejestracji wielu kluczy dostępu pomaga użytkownikom uniknąć zablokowania dostępu bez konieczności korzystania z słabszej metody uwierzytelniania.

✅ Zezwalaj użytkownikom na dodawanie nowych i elastyczniejszych typów kluczy dostępu na stronie zarządzania.

✅ Wyświetl nazwa klucza dostępu.

  • Nazwij klucze dostępu na podstawie identyfikatora AAGUID i podaj wizualną reprezentację kluczy dostępu użytkownika.

✅ Określ, czy klucz dostępu jest możliwy do zsynchronizowania, czy nie.

  • Informowanie użytkownika, gdy klucz dostępu nie jest zsynchronizowany.

✅ Zezwalaj użytkownikom na usuwanie kluczy publicznych ze serwera.

✅ Informuj listę kluczy dostępu, gdy powiązany klucz publiczny zostanie usunięty z serwera.

  • Synchronizacja listy kluczy dostępu między serwerem a dostawcą kluczy dostępu poprawia wrażenia użytkownika.
Przykład strony zarządzania kluczami dostępu, na której przedstawiono dobre praktyki.
Przykład strony zarządzania kluczami dostępu, na której przedstawiono sprawdzone metody.

Uwagi dodatkowe

Pokaż zaktualizowane dane użytkownika (nazwa użytkownika, wyświetlana nazwa), gdy użytkownik je zaktualizuje.

Utwórz klucz dostępu zamiast nowego hasła, gdy użytkownik „zapomniał hasła”.

Zasoby