W tym dokumencie opisujemy, jak za pomocą Credential Manager uzyskać kryptograficznie zweryfikowany adres e-mail z urządzenia użytkownika. Dzięki temu użytkownicy Twojej aplikacji nie muszą weryfikować swojego adresu e-mail za pomocą haseł jednorazowych ani magicznych linków.
W tym dokumencie omówimy te kwestie:
- Zgodność z Androidem
- Wrażenia użytkownika
- Obsługiwane konta
- Wpływ na dostarczalność e-maili
- Porównanie z funkcją Zaloguj się przez Google
W tym przewodniku zakładamy, że znasz te pojęcia:
Zgodność z Androidem
Ta funkcja jest obsługiwana na telefonach, tabletach i urządzeniach składanych z Androidem 9 (poziom API 28) lub nowszym. Minimalna wymagana wersja Usług Google Play (GMS) to 25.49.x.
Wrażenia użytkownika
W kolejnych sekcjach opisujemy wrażenia użytkownika podczas procesu weryfikacji, konieczność uwzględnienia alternatywnych metod weryfikacji oraz zalecane wrażenia użytkownika w różnych przypadkach użycia.
Proces weryfikacji
Udostępnianie zweryfikowanego adresu e-mail wygląda tak:
Użytkownik skupia się na polu do wprowadzania danych lub klika przycisk, który wywołuje interfejs Credential Manager API. W zależności od projektu ekranu możesz też wywołać interfejs API podczas wczytywania ekranu aplikacji.
Pojawia się plansza dolna z informacjami, które zostaną udostępnione aplikacji. Jeśli na tym urządzeniu nie ma żadnych informacji, użytkownik zobaczy ogólny komunikat o błędzie.
Gdy użytkownik kliknie Zgadzam się i kontynuuj, wyświetl komunikat o powodzeniu lub niepowodzeniu.
(Opcjonalnie, zalecane) Jeśli użytkownik rejestruje się w Twojej usłudze, poproś go o utworzenie klucza dostępu, aby ułatwić mu późniejsze logowanie.
Uwzględnij podstawowe i alternatywne procesy
Aby zapewnić użytkownikom wygodę, na ekranach wymagających weryfikacji adresu e-mail uwzględnij te opcje:
- Podstawowa opcja weryfikacji: pole e-mail lub przycisk, który wywołuje proces interfejsu Credential Manager API w celu szybkiej weryfikacji.
- Alternatywne opcje weryfikacji: link lub przycisk, który umożliwia użytkownikom wybranie opcji „Zweryfikuj w inny sposób” lub „Inne opcje” w celu ręcznego wpisania adresu e-mail w przypadku niepowodzenia, np. gdy na urządzeniu nie ma żadnych informacji lub gdy pobrany adres e-mail nie jest zgodny z oczekiwanym. Dzięki temu użytkownicy mogą spróbować weryfikacji za pomocą innych danych logowania lub ręcznie wpisać hasło jednorazowe.
Przypadki użycia
W kolejnych sekcjach opisujemy zalecane przypadki użycia oraz sugerowane wrażenia użytkownika podczas weryfikacji adresu e-mail.
Rejestracja
Użytkownicy mogą od razu utworzyć konto za pomocą zweryfikowanego adresu e-mail bez dodatkowego kroku weryfikacji. Opcjonalnie możesz poprosić użytkownika o dodanie klucza dostępu. Jeśli zdecyduje się na dodanie klucza dostępu, uruchom proces jego tworzenia.
Odzyskiwanie konta
Aby uniknąć frustracji użytkowników, którzy szukają kodów odzyskiwania w folderach ze spamem, umożliw im odzyskanie konta za pomocą zweryfikowanego adresu e-mail bezpiecznie przechowywanego na urządzeniu. Dodatkowo zasugeruj im utworzenie klucza dostępu do przyszłego użytku.
Ponowne uwierzytelnianie w przypadku działań związanych z poufnymi danymi
Chroń działania użytkowników związane z poufnymi danymi, takie jak zmiana ustawień czy aktualizowanie szczegółów profilu, wymagając szybkiego ponownego uwierzytelnienia.
Obsługiwane konta
Weryfikacja adresu e-mail za pomocą Credential Manager obsługuje tylko weryfikację konsumenckich kont Google. Konta Workspace i konta nadzorowane nie są obsługiwane.
Konto Google dla użytkowników indywidualnych można utworzyć za pomocą adresu e-mail od dowolnego dostawcy, niekoniecznie @gmail.com. Google weryfikuje jednak te konta w inny sposób:
- W przypadku kont @gmail.com Google jest autorytatywnym źródłem informacji, a adres e-mail jest zweryfikowany.
- W przypadku kont innych niż @gmail.com Google nie jest autorytatywnym źródłem informacji o tych adresach e-mail w dłuższej perspektywie. Google weryfikuje adres e-mail podczas tworzenia konta, ale z czasem może się zmienić właściciel tego adresu. Dlatego w przypadku adresów innych niż @gmail.com warto rozważyć dodatkowy krok weryfikacji, np. wysłanie hasła jednorazowego, aby mieć pewność, że użytkownik nadal ma dostęp do konta e-mail.
Więcej informacji o tym, co oznacza weryfikacja, znajdziesz w artykule Cyfrowe dane logowania.
Ważność i aktualność
System wydaje dane logowania, które można zweryfikować, na podstawie bieżącego adresu e-mail użytkownika z aktywnych kont Google na urządzeniu. Te dane logowania są wydawane na urządzeniu z wyprzedzeniem, zwykle gdy urządzenie jest nieużywane. Chociaż te dane logowania mogą być ważne przez kilka dni, system sprawdza je w momencie udostępniania, aby mieć pewność, że konto nadal istnieje, jest na urządzeniu, a adres e-mail jest prawidłowy. W ten sposób priorytetem jest bieżący stan konta, a nie okres ważności danych logowania.
Aby zapewnić autentyczność, w momencie udostępniania generowany jest podpis Key Binding (kb), który zawiera nonce.
Jeśli urządzenie jest offline lub konto zostało usunięte, proces kończy się niepowodzeniem, zamiast udostępnić wygasłą kartę abonencką lub kartę abonencką do nieaktywnego konta Google.
Dostarczalność e-maili
Chociaż proces potwierdza legalność konta, nie gwarantuje dostarczenia wiadomości do skrzynki odbiorczej (np. e-mail może zostać przekierowany do spamu). Hasło jednorazowe pozostaje ostateczną metodą potwierdzania dostarczalności e-maili.
Porównanie z funkcją Zaloguj się przez Google
Zarówno cyfrowe dane logowania, jak i funkcja Zaloguj się przez Google zapewniają zweryfikowany adres e-mail, ale procesy użytkownika i przypadki użycia są inne:
- Przypadki użycia: proces weryfikacji adresu e-mail za pomocą Credential Manager nie jest używany wyłącznie w przypadkach rejestracji lub logowania, ale może być używany w każdym przypadku, w którym trzeba pobrać zweryfikowany adres e-mail. Może to obejmować również odzyskiwanie konta.
- Rejestracja: w przeciwieństwie do funkcji Zaloguj się przez Google proces Credential Manager nie wymaga rejestracji w Google.
- Obsługa platform: proces Credential Manager jest rozwiązaniem tylko na Androida.
- Zakresy: w przeciwieństwie do funkcji Zaloguj się przez Google, która może używać protokołu OAuth 2.0 do żądania dostępu do danych użytkownika (np. Kalendarza lub Dysku za pomocą zakresów), interfejs Digital Credentials API służy wyłącznie do pobierania zweryfikowanych atrybutów tożsamości. Nie można go używać do żądania dodatkowych zakresów autoryzacji.
Dalsze kroki
Aby zaimplementować tę funkcję w swojej aplikacji, zapoznaj się z przewodnikiem implementacji.