Protokół OAuth

Uwaga: w tym dokumencie opisano trzyetapowy proces OAuth2 używany do proszenia o dostęp do i skalowalnych danych. Zastosuj ten proces uwierzytelniania, jeśli tworzysz aplikacja innej firmy wymagająca dostępu do Konta Merchant Center. Jeśli tworzysz własną aplikację, ma dostęp wyłącznie do Twojego konta Merchant Center, spójrz na Usługa Google.

Każde żądanie wysyłane przez aplikację do interfejsu Google Content API for Shopping musi zawierać token autoryzacji. Token stanowi też dla Google identyfikator aplikacji.

Informacje o protokołach autoryzacji

Twoja aplikacja musi autoryzować żądania za pomocą protokołu OAuth 2.0. Inne protokoły nie są obsługiwane. Jeśli aplikacja używa funkcji Zaloguj się przez Google, niektórymi aspektami autoryzacji nie musisz się zajmować.

Autoryzowanie żądań za pomocą protokołu OAuth 2.0

Wszystkie żądania wysyłane do interfejsu Google Content API for Shopping muszą być autoryzowane przez użytkownika.

Szczegóły procesu autoryzacji z użyciem protokołu OAuth 2.0 różnią się nieznacznie w zależności od rodzaju projektowanej aplikacji. Do większości typów aplikacji ma zastosowanie ten ogólny proces:

  1. Gdy tworzysz aplikację, rejestrujesz ją, korzystając z konsoli interfejsów API Google. Następnie Google przekazuje informacje, które są potrzebne później, takie jak identyfikator klienta i tajny klucz klienta.
  2. Aktywuj interfejs Google Content API for Shopping w konsoli interfejsów API Google. (jeśli interfejsu API nie ma na liście w konsoli, pomijasz ten krok).
  3. Gdy Twoja aplikacja potrzebuje dostępu do danych użytkownika, prosi Google o konkretny zakres dostępu.
  4. Google wyświetla użytkownikowi ekran zgody z prośbą o autoryzowanie dostępu aplikacji do niektórych danych.
  5. Jeśli użytkownik wyrazi zgodę, Google przekazuje Twojej aplikacji ważny przez krótki czas token dostępu.
  6. Aplikacja żąda danych użytkownika i dołącza do żądania token dostępu.
  7. Jeśli Google uzna, że żądanie i token są prawidłowe, przesyła dane, o które prosisz.

Niektóre procesy obejmują dodatkowe kroki, takie jak wykorzystanie tokenów odświeżania do uzyskania nowych tokenów dostępu. Szczegółowe informacje o procesach obowiązujących w przypadku różnych typów aplikacji znajdziesz w dokumencie Google na temat protokołu OAuth 2.0.

Oto informacje o zakresie protokołu OAuth 2.0 dla Google Content API for Shopping:

Zakres Znaczenie
https://www.googleapis.com/auth/content Uprawnienia do odczytu/zapisu.

Aby poprosić o dostęp przy użyciu protokołu OAuth 2.0, aplikacja potrzebuje danych z zakresu oraz informacji przekazywanych przez Google po zarejestrowaniu aplikacji (takich jak identyfikator klienta i tajny klucz klienta).

Wskazówka: biblioteki klienta interfejsów API Google mogą wykonać niektóre procesy autoryzacji za Ciebie. Są dostępne dla różnych języków programowania. Więcej szczegółów znajdziesz na stronie z bibliotekami i próbkami.

Pobieranie zakresów protokołu OAuth

Zalecamy użycie przyrostowego autoryzacji, by uniknąć problemów z wyborem zakresu.

Zakresy protokołu OAuth są domyślnie odznaczone na ekranie akceptacji w aplikacji, jeśli poprosisz o więcej niż jedną prośbę. Gdy aplikacja wyświetla ekran zgody użytkownikowi, który musi ręcznie wybrać każdy zakres, aby autoryzować dostęp.

Sprawdź odpowiedź z żądania OAuth, aby upewnić się, że otrzymujesz odpowiednie zakresy.

Zobacz stronę Zasady OAuth 2.0 .

Poproś o weryfikację aplikacji

Wszystkie aplikacje korzystające z Content API muszą przejść proces weryfikacji OAuth. Użytkownicy niezweryfikowane aplikacje korzystające z Content API będą otrzymywać ostrzeżenia, a aplikacje będą miały ograniczoną funkcjonalność. W tym kontekście aplikacja jest definiowana jako unikalny identyfikator klienta OAuth 2.0 w Google Cloud.

Proces weryfikacji zajmuje zwykle 3–5 dni roboczych. Aby dowiedzieć się więcej o: oraz przesłać prośbę o weryfikację, zapoznaj się z artykułem Weryfikacja aplikacji.

Ta zasada dotyczy wszystkich aplikacji i zalecamy, aby wszystkie aplikacje korzystały z protokołu OAuth Google weryfikacji w możliwie jak najkrótszym czasie, aby uniknąć przerw w działalności.

Przykład autoryzacji

Poniższy kod pokazuje, jak skonfigurować klienta i autoryzować żądania za pomocą protokołu OAuth 2.0. dla aplikacji internetowych. Inne języki znajdziesz na stronie Sample i biblioteki.

PHP

W tym przykładzie zastosowano przepływ aplikacji internetowej. Identyfikator URI przekierowania powinien być identyfikatorem URI tej strony w języku PHP.

<?php
require_once 'Google/Client.php';

session_start();

$client = new Google_Client();
$client->setApplicationName('Sample Content API application');
$client->setClientId('YOUR_CLIENT_ID');
$client->setClientSecret('YOUR_CLIENT_SECRET');
$client->setRedirectUri('YOUR_REDIRECT_URI');
$client->setScopes('https://www.googleapis.com/auth/content');

if (isset($_SESSION['oauth_access_token'])) {
  $client->setAccessToken($_SESSION['oauth_access_token']);
} elseif (isset($_GET['code'])) {
  $token = $client->authenticate($_GET['code']);
  $_SESSION['oauth_access_token'] = $token;
} else {
  header('Location: ' . $client->createAuthUrl());
  exit;
}

Po uwierzytelnieniu możesz utworzyć obiekt Service, za pomocą którego będziesz wysyłać żądania do interfejsu API.

require_once 'Google/Service/ShoppingContent.php';

$service = new Google_Service_ShoppingContent($client);