1.1: Łączenie z kontem OAuth

Wprowadzenie i efekty biznesowe


Aby korzystać z interfejsów API Google, protokół OAuth musi przyznać Twojej integracji dostęp sprzedawcy umożliwiający wprowadzanie ich w bezpłatnych informacjach i płatnych reklamach.

alt-oauth

Twoja aplikacja musi autoryzować żądania za pomocą protokołu OAuth 2.0. Inne protokoły nie są obsługiwane.

Wskazówki dotyczące UX


Cel: uzyskanie od sprzedawców upoważnienia do udostępniania ich danych w aplikacji Google.

Zasada projektowania: proś o odpowiednie uprawnienia we właściwym czasie. Jeśli sprzedawca nie udzieli Ci pozwolenia, zakończy się niepowodzeniem.

Sprzedawca zostanie poproszony o przyznanie uprawnień dostępu. Oto przykład, w jaki sposób można wyświetlić sprzedawcy te instrukcje:

oauth_1

oauth_2

Gdy sprzedawca wykona te wstępne czynności, możliwe są trzy możliwe efekty:

Wynik 1. Jeśli sprzedawca wyrazi zgodę na wszystkie uprawnienia:

oauth_3

Jeśli sprzedawca udzieli pełnych uprawnień, zaznacza wszystkie pola i pojawi się prośba o kontynuowanie procesu rejestracji.

Wynik 2. Jeśli sprzedawca nie wyrazi zgody na Google Ads

oauth_4

Sprzedawca zaznacza wszystkie pola oprócz uprawnień związanych z Google Ads. Użytkownicy kontynuują proces rejestracji, a podczas tworzenia nowego konta Google Ads lub łączenia się z istniejącym kontem zostają ponownie poproszeni o przyznanie uprawnień:

oauth_5 oauth_6

Wynik 3: jeśli weryfikacja danych produktów lub witryny nie zostanie wyczyszczona, sprzedawca będzie zablokowany

oauth_7

oauth_8

oauth_9

oauth_10

Wszystkie powyższe opcje powodują wyświetlenie tego samego komunikatu o błędzie:

oauth_11

Wskazówki techniczne


Wybierz autoryzowanie żądań za pomocą protokołu OAuth 2.0

Istnieją 2 metody wyboru metody uwierzytelniania sprzedawcy:

OAuth 2.0 w przypadku kont, które nie są usługami (zdecydowanie zalecane) OAuth 2.0 w przypadku kont usługi
Klient OAuth 2.0 identyfikuje aplikację i pozwala użytkownikom przyznawać jej ograniczony dostęp do ich danych Google. Zezwala aplikacji na dostęp do interfejsów Google Cloud API w imieniu użytkownika.

W wyniku wymienionych wystąpień token dostępu zostanie unieważniony, co należy uwzględnić w kodzie:

● Użytkownik unieważnił dostęp
● Użytkownik zmienił hasło.
● Przekroczono limit przyznanych tokenów odświeżania.
● Token odświeżania nie był używany w ciągu 6 miesięcy.
Konta usługi to specjalne konta Google, których aplikacje mogą używać, aby automatycznie uzyskiwać dostęp do interfejsów API Google przy użyciu protokołu OAuth 2.0.Wykorzystuje on proces OAuth 2.0, który nie wymaga autoryzacji przez człowieka. Zamiast tego korzysta z pliku klucza, do którego ma dostęp tylko Twoja aplikacja.

Uwaga: aplikacje, które do uwierzytelniania używają kont usługi, mają dostęp tylko do własnego konta Merchant Center. Jeśli tworzysz aplikację innej firmy, która potrzebuje dostępu do kont Merchant Center Twoich klientów, przeczytaj przewodnik dotyczący autoryzacji żądań.

Uwaga: wymagany jest projekt Cloud, który umożliwia utworzenie maksymalnie 100 kont usługi. Zobacz dokumentację

Konfigurowanie procesu OAuth

Platforma autoryzacji OAuth 2.0 umożliwia aplikacji zewnętrznej uzyskanie ograniczonego dostępu do usługi HTTP w imieniu właściciela zasobu przez zorganizowanie interakcji w ramach zatwierdzenia między właścicielem zasobu a usługą HTTP lub przez umożliwienie aplikacji zewnętrznej uzyskania dostępu w swoim imieniu.

Twoja aplikacja ma dostęp do chronionych (niepublicznych) danych, dlatego potrzebujesz identyfikatora klienta OAuth 2.0. Interfejsy API Google używają protokołu OAuth 2.0 do uwierzytelniania i autoryzacji. Google obsługuje typowe scenariusze korzystania z protokołu OAuth 2.0, takie jak te dotyczące serwera WWW, aplikacji zainstalowanych i po stronie klienta.

Więcej informacji

O czym warto pamiętać o używaniu protokołu OAuth na potrzeby interfejsu Content API for Shopping:

  1. Sprawdź, czy parametr access_type jest ustawiony na tryb offline: tokeny dostępu okresowo tracą ważność i stają się nieprawidłowymi danymi uwierzytelniającymi w przypadku powiązanego żądania do interfejsu API.

  2. Odśwież token dostępu: możesz to zrobić bez pytania użytkownika o zgodę (także wtedy, gdy użytkownik nie jest obecny), jeśli poprosisz o dostęp offline do zakresów powiązanych z tokenem (więcej informacji).

  3. Implementacja protokołu OAuth w bibliotekach: zdecydowanie zalecamy użycie bibliotek klienta interfejsów API Google.

  4. Zakres: musisz poprosić sprzedawcę o przyznanie Ci uprawnień do zapisu i odczytu na jego koncie Google z zakresem OAuth Google Merchant Center: https://www.googleapis.com/auth/content.

  5. Możesz użyć protokołu OAuth do pobierania najważniejszych informacji z profilu użytkownika.

Zakresy do integracji

W zależności od typu integracji, jakie planujesz utworzyć dla sprzedawców, zalecamy na razie poproszenie o podanie wszystkich niezbędnych zakresów.

Program Zakres Który format jest wymagany
Content API. https://www.googleapis.com/auth/content Bezpłatne informacje
Zgłaszanie witryny do weryfikacji https://www.googleapis.com/auth/siteverification Bezpłatne informacje i płatne reklamy
Reklamy https://www.googleapis.com/auth/adwords Bezpłatne informacje i płatne reklamy

Sprawdzanie, czy sprzedawcy przyznali dostęp OAuth

Sprzedawcy muszą zaznaczyć pola w procesie uzyskiwania zgody OAuth, aby przyznać Ci dostęp do określonych zakresów: jeśli brakuje wymaganych zakresów, wyjaśnij sprzedawcom, dlaczego są one wymagane, i ponownie poproś o uprawnienia (więcej informacji). Brak dostępu do wszystkich tych uprawnień uniemożliwia sprzedawcom pełne wdrożenie.

access

Wywołaj ten punkt końcowy interfejsu API, aby sprawdzić przyznane zakresy:

https://www.oauth2.googleapis.com/token

Zawiera on te informacje:

  • access_token
  • zakresy przyznane użytkownikowi
  • czas do wygaśnięcia tokena

Poproś

Zakresy wrażliwe i proces weryfikacji OAuth

Niektóre zakresy używane przez interfejsy OAuth API są uznawane za wrażliwe i wymagają procesu weryfikacji. Dodatkowe informacje i przykłady znajdziesz w artykule Protokół OAuth na potrzeby interfejsu Content API.

  1. Poufny zakres aplikacji zgodny z zasadami: musisz się upewnić, że aplikacja jest zgodna z zasadami dotyczącymi danych użytkownika w usługach interfejsu API Google. Musisz też zaakceptować Warunki korzystania z usługi API.

  2. Upewnij się, że Twoja aplikacja nie podlega żadnym z przypadków użycia wymienionych w sekcji Wyjątki od wymagań związanych z weryfikacją.

  3. Potwierdź własność autoryzowanych domen projektu: użyj Search Console. Użyj konta, które ma uprawnienia właściciela projektu lub edytującego projekt w Cloud Console.

  4. Upewnij się, że wszystkie informacje o marce na ekranie zgody OAuth są zgodne i prawidłowe, np. nazwa projektu widoczna dla użytkowników, adres e-mail zespołu pomocy, adres URL strony głównej i adres URL polityki prywatności, dokładnie odzwierciedlają tożsamość aplikacji.

  5. Poproś o dostęp do aplikacji z zakresu wrażliwego w ramach procesu weryfikacji: Postępuj zgodnie z procedurą, która wymaga wypełnienia formularza, podania uzasadnienia i wysłania filmu.