Jeśli masz aplikację na Androida, która wymaga rejestracji użytkownika i chcesz zezwolić użytkownikom na logowanie się przez Google, w jaki sposób poradzisz sobie z tym?Najlepszy sposób na umożliwienie użytkownikom dostępu do Twojej aplikacji przy użyciu ich danych logowania Google
Chciałbym wyłączyć z dyskusji dyskusję Google+. Nie używamy też danych logowania użytkownika do uzyskiwania dostępu do interfejsów Google API i nie jestem zainteresowany dodatkowym dostępem do funkcji społecznościowych Google+.
Wydaje się, że kilka opcji:
Zastosowanie OAuth2.0 uwierzytelniania
Udokumentowane w Google OAUth2 Login stronie
To naprawdę nie wspominając Android, ale jest (częściowo) na podstawie tokenów dostępu OAuth2, ale, co ważniejsze, na walidacji identyfikatora sieci WWW JSON id_token.
Ten sposób uwierzytelniania użytkowników obejmuje także uruchomienie WebView, aby umożliwić użytkownikom zalogowanie się na swoje konto Google i dość złożoną weryfikację identyfikatora id_token.
Zastosowanie OAuth2/Google Play
Jest próbka w Google Play, która skupia się bardziej na zezwolenia. Używa GoogleAuthUtil.getToken do pobrania hasła access_token. Częścią tego jest zdecydowanie uwierzytelnienie, ponieważ w oknie dialogowym pojawia się komunikat "Zaloguj się do ...".
Am I słusznie przypuszczać, że jest to zła praktyka, aby korzystać przepływ OAuth2.0 z access_token jako mechanizm uwierzytelniania? (przechowywanie tokena dostępu jako tokenu uwierzytelniania).
Wspieranie Facebook/Twitter loginy
Powód pytam jest ze względu na sposób Twitter i Facebook zalecamy wdrożyć "Zaloguj się z ..." procesu uwierzytelniania
To również wydaje się być oparte wyłącznie na tokenach dostępu OAuth.
Jakieś inne opcje, o których nie wiem, pozwalają na uwierzytelnianie użytkowników za pomocą konta Google?
Sprawdź też tę książkę kucharską https://developers.google.com/accounts/cookbook/platforms/Hybrid – nvnagr
Rzeczywiście wygląda to na dobry sposób robienia tego na Androidzie, który nie obejmuje Google Plus. (Jest zależny od Usług Google Play) +1 również w przypadku prezentacji. – ddewaele
Jeśli chcę użyć tego w typie przepływu "Zaloguj się przy użyciu konta Google", co przechowujesz w bazie danych backendu? Czy wystarczy dodać e-mail użytkowników do bazy danych z flagą wskazującą, że jest to uwierzytelnienie za pomocą tokenów identyfikatora Google (po otrzymaniu i zweryfikowaniu początkowego tokena identyfikacyjnego), a następnie po prostu poprzeć każdy identyfikator IDToken, który jest wysyłany na każdym kolejnym toku Wywołanie REST). Nie ma potrzeby przechowywania/buforowania tych IDTokens w samym backendu, prawda? – ddewaele