Wybierz ścieżkę integracji
Wybierz ścieżkę, która najlepiej odpowiada Twoim potrzebom:
| Ścieżka | Urządzenia | Więcej informacji |
|---|---|---|
| Protokół Universal Commerce Protocol (UCP) | Sprzedawcy i detaliści. | Dokumentacja UCP |
| Standardowe łączenie kont | Inteligentny dom, telewizor i YouTube. | Dokumenty |
Łączenie kont umożliwia posiadaczom kont Google szybkie, bezproblemowe i bezpieczne łączenie się z Twoimi usługami. Możesz wdrożyć łączenie kont Google, aby udostępniać dane użytkownika z Twojej platformy aplikacjom i usługom Google.
Bezpieczny protokół OAuth 2.0 umożliwia bezpieczne połączenie konta Google użytkownika z jego kontem na Twojej platformie, dzięki czemu aplikacje i urządzenia Google uzyskują dostęp do Twoich usług.
Użytkownicy mogą połączyć lub rozłączyć swoje konta i opcjonalnie utworzyć nowe konto na Twojej platformie za pomocą łączenia z kontem Google.
Przypadki użycia
Oto niektóre z powodów, dla których warto wdrożyć łączenie z kontem Google:
udostępniać dane użytkownika z Twojej platformy aplikacjom i usługom Google;
Zintegruj się z Zakupami Google i platformami AI (wyszukiwarka, Gemini) za pomocą protokołu Universal Commerce Protocol (UCP).
Odtwarzaj treści wideo i filmy za pomocą Google TV.
zarządzanie połączonymi urządzeniami Google Smart Home i sterowanie nimi za pomocą aplikacji Google Home i Asystenta Google, np. „OK Google, włącz światła”;
Twórz dostosowane do użytkownika funkcje i sposoby działania Asystenta Google za pomocą akcji konwersacyjnych, np. „OK Google, zamów to, co zwykle, w Starbucks”.
Umożliwiać użytkownikom zdobywanie nagród za oglądanie kwalifikujących się transmisji na żywo w YouTube po połączeniu konta Google z kontem partnera oferującego nagrody.
Wstępne wypełnianie nowych kont podczas rejestracji danymi udostępnianymi za zgodą użytkownika z profilu konta Google.
Obsługiwane funkcje
Te funkcje są obsługiwane przez łączenie z kontem Google:
Szybko udostępniaj dane za pomocą przepływu niejawnego łączenia OAuth.
Zapewnij większe bezpieczeństwo dzięki procesowi kodu autoryzacji w przypadku łączenia kont za pomocą OAuth.
Loguj obecnych użytkowników lub rejestruj nowych użytkowników zweryfikowanych przez Google na swojej platformie, uzyskuj ich zgodę i bezpiecznie udostępniaj dane za pomocą uproszczonego łączenia.
Ogranicz przeszkody dzięki przełączaniu aplikacji. W zaufanej aplikacji Google jedno kliknięcie bezpiecznie otwiera zweryfikowaną aplikację na Androida lub iOS, a jedno kliknięcie wyraża zgodę użytkownika i łączy konta.
Zwiększanie prywatności użytkowników przez definiowanie zakresów niestandardowych, aby udostępniać tylko niezbędne dane, oraz zwiększanie zaufania użytkowników przez jasne określanie, w jaki sposób ich dane są wykorzystywane.
Dostęp do danych i usług hostowanych na Twojej platformie można cofnąć, rozłączając konta. Wdrożenie opcjonalnego punktu końcowego unieważniania tokena umożliwia synchronizację z wydarzeniami inicjowanymi przez Google, a funkcja ochrony międzykontowej (RISC) pozwala powiadamiać Google o wszelkich wydarzeniach odłączania, które mają miejsce na Twojej platformie.
Procesy łączenia kont
Istnieją 3 procesy łączenia z kontem Google, które są oparte na protokole OAuth i wymagają zarządzania punktami końcowymi autoryzacji i wymiany tokenów zgodnymi z protokołem OAuth 2.0 lub kontrolowania ich.
Podczas procesu łączenia wydajesz Google tokeny dostępu do poszczególnych kont Google po uzyskaniu zgody właścicieli kont na połączenie kont i udostępnianie danych.
Łączenie kont za pomocą protokołu OAuth („OAuth w internecie”)
Jest to podstawowy proces OAuth, który kieruje użytkowników do Twojej witryny w celu połączenia kont. Użytkownik zostanie przekierowany na Twoją stronę, aby zalogować się na swoje konto. Po zalogowaniu użytkownik wyraża zgodę na udostępnianie Google swoich danych w Twojej usłudze. W tym momencie konto Google użytkownika i Twoja usługa zostaną połączone.
Łączenie OAuth obsługuje przepływy kodu autoryzacji i niejawne przepływy OAuth. Usługa musi hostować punkt końcowy autoryzacji zgodny z protokołem OAuth 2.0 w przypadku przepływu niejawnego oraz udostępniać punkt końcowy autoryzacji i wymiany tokenów w przypadku przepływu kodu autoryzacji.
Rysunek 1. Łączenie kont na telefonie użytkownika za pomocą protokołu OAuth w internecie
Łączenie za pomocą przejścia do aplikacji opartego na OAuth („Przejście do aplikacji”)
Sposób obsługi protokołu OAuth, który kieruje użytkowników do aplikacji w celu połączenia kont.
Łączenie aplikacji oparte na OAuth prowadzi użytkowników podczas przechodzenia między zweryfikowanymi aplikacjami mobilnymi na Androida lub iOS a platformą Google, aby mogli oni przejrzeć proponowane zmiany w dostępie do danych i wyrazić zgodę na połączenie konta na Twojej platformie z kontem Google. Aby włączyć przejście do aplikacji, usługa musi obsługiwać łączenie za pomocą protokołu OAuth lub łączenie za pomocą Zaloguj się przez Google opartego na protokole OAuth z użyciem przepływu kodu autoryzacji.
Funkcja App Flip jest obsługiwana zarówno na Android, jak i na iOS.
Jak to działa:
Aplikacja Google sprawdza, czy Twoja aplikacja jest zainstalowana na urządzeniu użytkownika:
- Jeśli aplikacja zostanie znaleziona, użytkownik zostanie „przekierowany” do Twojej aplikacji. Aplikacja uzyskuje od użytkownika zgodę na połączenie konta z Google, a następnie „przekierowuje” go z powrotem do usługi Google.
- Jeśli aplikacja nie zostanie znaleziona lub podczas procesu przejścia do aplikacji wystąpi błąd, użytkownik zostanie przekierowany do uproszczonego procesu uwierzytelniania OAuth lub procesu uwierzytelniania OAuth w internecie.
Rysunek 2. Łączenie kont na telefonie użytkownika za pomocą przełączania aplikacji
Uproszczone łączenie oparte na OAuth („Uproszczone”)
Uproszczone łączenie za pomocą Logowania przez Google opartego na OAuth dodaje Logowanie przez Google do łączenia za pomocą OAuth, co umożliwia użytkownikom ukończenie procesu łączenia bez opuszczania platformy Google, a tym samym zmniejsza trudności i liczbę rezygnacji.
Uproszczone łączenie oparte na OAuth
zapewnia najlepszą wygodę użytkownikom dzięki płynnemu logowaniu, tworzeniu konta i łączeniu kont
za pomocą funkcji Zaloguj się przez Google i łączenia OAuth. Usługa musi obsługiwać punkty końcowe autoryzacji i wymiany tokenów zgodne z protokołem OAuth 2.0.
Dodatkowo punkt końcowy wymiany tokenów musi obsługiwać asercje tokena sieciowego JSON (JWT) i wdrażać intencje check, create i get.
Jak to działa:
Google potwierdza konto użytkownika i przekazuje Ci te informacje:
- Jeśli w Twojej bazie danych istnieje konto użytkownika, użytkownik pomyślnie połączy swoje konto Google z kontem w Twojej usłudze.
- Jeśli w Twojej bazie danych nie ma konta użytkownika, może on utworzyć nowe konto usługi zewnętrznej, korzystając z informacji przekazanych przez Google : adresu e-mail, imienia i nazwiska oraz zdjęcia profilowego, lub zalogować się i połączyć z innym adresem e-mail (w tym celu musi zalogować się w Twojej usłudze za pomocą protokołu Web OAuth).
Rysunek 3. Łączenie kont na telefonie użytkownika za pomocą uproszczonego łączenia
Którego procesu użyjesz?
Aby zapewnić użytkownikom jak najlepsze wrażenia z łączenia kont, zalecamy wdrożenie wszystkich ścieżek. Uproszczone procesy i procesy przejścia do aplikacji zmniejszają trudności związane z łączeniem, ponieważ użytkownicy mogą ukończyć ten proces w kilku krokach. Połączenie za pomocą OAuth w internecie wymaga najmniej wysiłku i jest dobrym punktem wyjścia. Następnie możesz dodać inne przepływy połączeń.
Praca z tokenami
Łączenie z kontem Google jest oparte na standardzie branżowym OAuth 2.0.
Wydajesz Google tokeny dostępu do poszczególnych kont Google po uzyskaniu zgody właścicieli kont na połączenie kont i udostępnianie danych.
Typy tokenów
OAuth 2.0 używa ciągów znaków zwanych tokenami do komunikacji między agentem użytkownika, aplikacją klienta a serwerem OAuth 2.0.
Podczas łączenia kont można używać 3 typów tokenów OAuth 2.0:
Kod autoryzacji. Token o krótkim czasie ważności, który można wymienić na token dostępu i token odświeżania. Ze względów bezpieczeństwa Google wywołuje punkt końcowy autoryzacji, aby uzyskać kod jednorazowy lub o bardzo krótkim czasie działania.
token dostępu. Token przyznający posiadaczowi dostęp do zasobu. Aby ograniczyć ekspozycję, która może być spowodowana utratą tego tokena, jego ważność jest ograniczona czasowo. Zwykle wygasa po około godzinie.
Token odświeżania. Długotrwały token, który można wymienić na nowy token dostępu po wygaśnięciu tokena dostępu. Po integracji usługi z Google ten token jest przechowywany i używany wyłącznie przez Google. Google wywołuje punkt końcowy wymiany tokenów, aby wymienić tokeny odświeżania na tokeny dostępu, które są następnie używane do uzyskiwania dostępu do danych użytkownika.
Obsługa tokenów
Warunki wyścigu w środowiskach z klastrami i wymianach klient-serwer mogą powodować skomplikowane scenariusze ustawiania czasu i obsługi błędów podczas pracy z tokenami. Na przykład:
- Otrzymujesz prośbę o nowy token dostępu i wydajesz nowy token dostępu. Równocześnie otrzymujesz żądanie dostępu do zasobu usługi przy użyciu poprzedniego, niewygasłego tokena dostępu.
- Twoja odpowiedź dotycząca tokena odświeżania nie została jeszcze odebrana (lub nigdy nie została odebrana) do Google. W żądaniu od Google używany jest wcześniej ważny token odświeżania.
Żądania i odpowiedzi mogą docierać w dowolnej kolejności lub wcale z powodu asynchronicznego działania usług w klastrze, zachowania sieci lub innych czynników.
Nie można zagwarantować natychmiastowego i w pełni spójnego stanu wspólnego, zarówno w ramach systemów obsługi tokenów, jak i w ramach systemów obsługi tokenów. W obrębie lub między systemami w krótkim czasie może współistnieć wiele prawidłowych, niewygasłych tokenów. Aby zminimalizować negatywny wpływ na użytkowników, zalecamy wykonanie tych czynności:
- akceptować tokeny dostępu, których ważność nie wygasła, nawet po wydaniu nowszego tokena.
- Użyj alternatywy dla odświeżania rotacji tokenów.
- Obsługa wielu jednocześnie ważnych tokenów dostępu i odświeżania. Ze względów bezpieczeństwa ogranicz liczbę i czas trwania tokenów.
Konserwacja i obsługa przerw w działaniu
Podczas konserwacji lub nieplanowanych przestojów Google może nie być w stanie wywoływać punktów końcowych autoryzacji lub wymiany tokenów w celu uzyskania tokenów dostępu i odświeżania.
Punkty końcowe powinny odpowiadać z kodem błędu 503 i pustym elementem body. W takim przypadku Google przez ograniczony czas ponownie próbuje zrealizować nieudane żądania wymiany tokena. Jeśli Google będzie w stanie uzyskać tokeny odświeżania i dostępu, nieudane żądania nie będą widoczne dla użytkowników.
Jeśli żądanie tokena dostępu nie powiedzie się, użytkownik zobaczy widoczny komunikat o błędzie. Jeśli używany jest domyślny przepływ pracy OAuth 2.0, użytkownicy będą musieli ponownie próbować połączyć swoje konta.
Rekomendacje
Istnieje wiele rozwiązań, które pozwalają zminimalizować wpływ konserwacji. Oto kilka opcji do rozważenia:
Zachowaj dotychczasową usługę i przekierowuj ograniczoną liczbę żądań do nowo zaktualizowanej usługi. Przenoś wszystkie żądania dopiero po potwierdzeniu oczekiwanej funkcjonalności.
Zmniejsz liczbę żądań tokenów w okresie konserwacji:
Ogranicz okresy konserwacji do krótszych niż czas przechowywania tokena dostępu.
Tymczasowo zwiększ okres ważności tokena dostępu:
- Wydłuż czas życia tokena do wartości większej niż okres konserwacji.
- Poczekaj 2 razy więcej czasu na token dostępu, aby umożliwić użytkownikom wymianę tokenów krótkotrwałych na tokeny o dłuższym czasie.
- Wprowadź konserwację.
- Odpowiedź na żądanie tokena z kodem błędu
503i pustym tekstem. - Zakończ konserwację.
- Skraca czas życia tokena z powrotem do normalnego stanu.
Zarejestruj się przez Google
Aby włączyć łączenie kont, musimy poznać szczegóły konfiguracji OAuth 2.0 i udostępnić dane logowania. Szczegółowe informacje znajdziesz w sekcji rejestracja.