Uwierzytelnianie wywołań interfejsu API

W tym przykładzie pokazujemy, jak za pomocą kont usług można wywoływać interfejs API AdSense Platforms, aby tworzyć subkonta i nimi zarządzać.

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 postępuj zgodnie z instrukcjami poniżej, aby skonfigurować nowy projekt:

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

Krok 2. Utwórz konto usługi

Używanie kont usługi to najlepszy sposób na tworzenie subkont. Aby utworzyć konto usługi:

  • Otwórz w Google Cloud stronę Konta usługi.
  • 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.

Gdy utworzysz konto usługi, musisz je wysłać do Google, aby zostało dodane do Twojego konta AdSense. Jest to bardzo ważne, 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

Interfejs AdSense Platform API jest niedostępny, dlatego 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 wygenerować tokeny dostępu do użycia w wywołaniach interfejsu API, musisz utworzyć klucz usługi. Aby to zrobić:

  • Otwórz w Google Cloud stronę Konta usługi.
  • W kolumnie działań obok konta usługi, którego chcesz użyć do utworzenia subkont, kliknij , a następnie „Zarządzaj kluczami”.
  • Kliknij „Dodaj klucz”, a następnie „Utwórz nowy klucz”.
  • Nie zmieniaj typu klucza, pozostaw JSON, i kliknij „Utwórz”.
  • Na komputer zostanie utworzony i pobrany plik JSON. Zachowaj go w bezpiecznym miejscu, ponieważ będzie potrzebny do uwierzytelniania 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, które ułatwiają generowanie tokenów dostępu, których można używać do wywoływania interfejsów API. Dowiedz się, jak wygenerować dane logowania dla kont usługi:

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

Zakres interfejsu AdSense Platforms API: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. Biblioteki klienta nie są jeszcze obsługiwane w przypadku interfejsu AdSense Platform API, dlatego należy wysyłać bezpośrednie żądania HTTP. Token dostępu powinien być dołączony jako nagłówek w żądaniu HTTP. Nagłówek powinien wyglądać tak:

Authorization: OAuth <credentials>

Przykłady znajdziesz na stronach interfejsu API.