Migracja z logowania przez Google+

Kroki minimalizacji wpływu zmian zakresów na użytkowników

  1. Jeśli Twoja aplikacja wymaga adresu e-mail uwierzytelnionego użytkownika, a usługa profile.emails.read była już wcześniej używana do tego celu, użyj email.
  2. Uzyskaj zatwierdzenie domeny profile.emails.read po zatwierdzeniu prośby o weryfikację. Więcej informacji znajdziesz w artykule Jak przesłać prośbę o weryfikację.
  3. Unieważnij poprzedni token użytkownika do zakresu, który ma zostać usunięty, albo całkowicie odbierz dostęp do aplikacji. Na przykład token z dostępem profile.emails.read powinien zostać unieważniony. Zalecamy stosowanie odwołania, gdy użytkownicy korzystają z aplikacji. Dzięki temu od razu uzyskasz zgodę użytkowników.
  4. Zachęć użytkowników do ponownego wyrażenia zgody na nowy zakres, np. email, bez parametru profile.emails.read.
  5. Usuń zakres, który chcesz wycofać z konfiguracji ekranu zgody OAuth interfejsów API Google.

Aby przenieść aplikację z Logowania przez Google+ na Logowanie przez Google, musisz zaktualizować przycisk logowania, wymagane zakresy oraz instrukcje pobierania informacji profilowych z Google. Pełne instrukcje znajdziesz w dokumentacji Logowania przez Google na Androida.

Gdy aktualizujesz przycisk logowania, nie odwołuj się do Google+ ani nie używaj koloru czerwonego. Muszą być zgodne ze zaktualizowanymi wytycznymi dotyczącymi marki.

Większość aplikacji Logujących przez Google+ żądała niektórych kombinacji zakresów: plus.login, plus.me i plus.profile.emails.read. Użycie funkcji GoogleSignInOptions.Builder z opcją DEFAULT_SIGN_IN powoduje automatyczne wysłanie prośby o zakres profile zawierający nazwę użytkownika i zdjęcie profilowe. Jeśli chcesz podać też adres e-mail użytkownika, podczas tworzenia opcji logowania przez Google wywołaj .requestEmail().

Wiele osób implementujących Logowanie przez Google+ korzystało z przepływu kodu. Oznacza to, że aplikacje na Androida, iOS lub JavaScript otrzymują kod autoryzacji OAuth od Google, a klient wysyła go z powrotem do serwera wraz z ochroną przed oszustwem w różnych witrynach. Serwer weryfikuje kod oraz pobiera tokeny odświeżania i dostępu, aby pobierać informacje o profilu użytkownika z interfejsu API people.get.

Google zaleca teraz żądanie tokena identyfikatora i wysłanie go z klienta na serwer. Tokeny tożsamości mają wbudowane zabezpieczenia przed oszustwem w różnych witrynach i mogą być statycznie weryfikowane na Twoim serwerze, co pozwala uniknąć dodatkowego wywołania interfejsu API w celu pobrania z serwerów Google informacji o profilu użytkownika. Postępuj zgodnie z instrukcjami weryfikowania tokenów tożsamości na serwerze.

Jeśli nadal wolisz uzyskiwać informacje o profilu, korzystając z przepływu kodu. Gdy Twój serwer uzyska token dostępu, musisz uzyskać informacje o profilu użytkownika z punktów końcowych userinfo określonych w dokumencie dotyczącym logowania dotyczącym logowania. Odpowiedź interfejsu API jest sformatowana inaczej niż odpowiedź z profilu Google+, dlatego musisz zaktualizować analizę do nowego formatu.

Jeśli używasz GoogleAuthUtil.getToken lub Plus.API, musisz migrate na najnowszą wersję interfejsu Sign-In API, która zapewnia większe bezpieczeństwo i większą wygodę użytkowników.