Uwierzytelnianie wywołań interfejsu API

W tym przykładzie pokazujemy, jak za pomocą kont usługi wywoływać interfejs API platform AdSense do tworzenia subkont i zarządzania nimi.

Krok 1. Utwórz nowy projekt Google Cloud (lub użyj istniejącego)

Jeśli masz już projekt Google Cloud, możesz go użyć. W przeciwnym razie wykonaj czynności opisane poniżej, aby skonfigurować nowy projekt:

https://cloud.google.com/resource-manager/docs/creating-managing-projects

Krok 2. Utwórz konto usługi

Konta usługi to najlepszy sposób tworzenia subkont. Aby utworzyć konto usługi, wykonaj te czynności:

  • Otwórz stronę kont usługi w Google Cloud.
  • Możesz użyć istniejącego konta usługi lub utworzyć nowe:
    • Kliknij „+ Utwórz konto usługi”.
    • Wypełnij formularz „Szczegóły konta usługi”
    • Kroki 2 i 3 na stronie (przyznawanie dostępu do projektów i użytkowników) są opcjonalne

Dowiedz się więcej o tworzeniu kont usługi i zarządzaniu nimi.

Po utworzeniu konta usługi musisz wysłać je do Google, aby dodać je do konta AdSense. Jest to niezbędne, ponieważ konto usługi musi mieć dostęp do Twojego konta AdSense. Przekaż tę informację swojemu menedżerowi konta.

Krok 3. Włącz interfejs AdSense Platform API w projekcie Google Cloud

Interfejsu API platformy AdSense nie można znaleźć, co oznacza, że musisz kliknąć ten link, aby włączyć go w swoim projekcie:

https://console.developers.google.com/apis/api/adsenseplatform.googleapis.com/overview

Krok 4. Utwórz klucz usługi

Aby generować tokeny dostępu do użycia w wywołaniach interfejsu API, musisz utworzyć klucz usługi. Aby to zrobić:

  • Otwórz stronę kont usługi w Google Cloud.
  • W kolumnie działań dla konta usługi, którego chcesz użyć do tworzenia subkont, kliknij , a następnie „Zarządzaj kluczami”
  • Kliknij „Dodaj klucz”, a następnie wybierz „Utwórz nowy klucz”.
  • Zachowaj wybór JSON jako typ klucza i kliknij „Utwórz”.
  • Zostanie utworzony plik json i pobrany na Twój komputer. Zachowaj to miejsce w bezpiecznym miejscu, ponieważ będzie potrzebne do uwierzytelnienia wywołań interfejsu API

Dowiedz się więcej o tworzeniu kluczy konta usługi i zarządzaniu nimi.

Krok 5. Użyj bibliotek OAuth Google do wygenerowania tokena dostępu

Google udostępnia biblioteki ułatwiające generowanie tokenów dostępu, za pomocą których można wykonywać wywołania interfejsu API. Informacje o generowaniu danych logowania dla kont usługi znajdziesz tutaj:

https://developers.google.com/identity/protocols/oauth2/service-account#authorizingrequests

Zakres interfejsu AdSense Platforms API jest następujący: https://www.googleapis.com/auth/adsense

Przykład w Pythonie

from google.auth.transport import requests
from google.oauth2 import service_account

CREDENTIAL_SCOPES = ["https://www.googleapis.com/auth/adsense"]
CREDENTIALS_KEY_PATH = 'service.json'

def get_service_account_token():
  credentials = service_account.Credentials.from_service_account_file(
          CREDENTIALS_KEY_PATH, scopes=CREDENTIAL_SCOPES)
  credentials.refresh(requests.Request())
  return credentials.token

Na tym etapie możesz zacząć wywoływać interfejsy API. Ponieważ biblioteki klienta nie są jeszcze obsługiwane przez interfejs AdSense Platform API, należy wysyłać bezpośrednie żądania HTTP. Token dostępu należy umieścić w nagłówku żądania HTTP. Nagłówek powinien wyglądać tak:

Authorization: OAuth <credentials>

Przykłady podano na stronach interfejsu API.