Xác thực lệnh gọi API

Trong ví dụ này, chúng tôi sẽ cho thấy cách sử dụng tài khoản dịch vụ để gọi API Nền tảng AdSense nhằm tạo và quản lý các tài khoản phụ.

Bước 1: Tạo dự án mới trên Google Cloud (hoặc sử dụng dự án hiện có)

Nếu bạn đã có sẵn một dự án trên Google Cloud, hãy sử dụng dự án đó. Nếu không, hãy làm theo hướng dẫn dưới đây về cách thiết lập dự án mới:

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

Bước 2: Tạo tài khoản dịch vụ

Sử dụng tài khoản dịch vụ là cách tốt nhất để tạo tài khoản phụ. Hãy làm theo các bước sau để tạo tài khoản dịch vụ:

  • Truy cập vào trang tài khoản dịch vụ trong Google Cloud
  • Bạn có thể sử dụng tài khoản dịch vụ hiện có hoặc tạo tài khoản mới:
    • Nhấp vào "+ Tạo tài khoản dịch vụ"
    • Điền thông tin vào phần "Thông tin về tài khoản dịch vụ" biểu mẫu
    • Bước 2 và 3 trên trang này (cấp quyền truy cập vào dự án và người dùng) là không bắt buộc

Tìm hiểu thêm về cách tạo và quản lý tài khoản dịch vụ.

Sau khi tạo tài khoản dịch vụ, bạn cần gửi tài khoản đó cho Google để được thêm vào tài khoản AdSense của mình. Điều này là cần thiết vì tài khoản dịch vụ cần được phép truy cập vào tài khoản AdSense của bạn. Vui lòng thông báo điều này thông qua người quản lý tài khoản của bạn.

Bước 3: Bật API Nền tảng AdSense cho dự án Google Cloud

Không thể tìm thấy AdSense Platform API, nghĩa là bạn phải truy cập vào đường liên kết sau để bật API đó cho dự án của mình:

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

Bước 4: Tạo khoá dịch vụ

Để tạo mã truy cập dùng trong lệnh gọi API, bạn cần tạo khoá dịch vụ. Hãy làm theo các bước sau:

  • Truy cập vào trang tài khoản dịch vụ trong Google Cloud
  • Trong cột hành động, đối với tài khoản dịch vụ bạn muốn dùng để tạo tài khoản phụ, hãy nhấp vào , rồi nhấp vào "Quản lý khoá"
  • Nhấp vào "Thêm khoá", rồi chọn "Tạo khoá mới"
  • Chọn JSON làm loại khoá rồi nhấp vào "Tạo"
  • Một tệp json sẽ được tạo và tải xuống máy tính của bạn. Hãy giữ an toàn vì thông tin này sẽ cần thiết để xác thực các lệnh gọi API

Tìm hiểu thêm về cách tạo và quản lý khoá tài khoản dịch vụ.

Bước 5: Sử dụng thư viện OAuth của Google để tạo mã truy cập

Google cung cấp các thư viện để giúp tạo mã truy cập. Bạn có thể dùng các mã này để thực hiện lệnh gọi API. Tìm hiểu cách tạo thông tin xác thực cho tài khoản dịch vụ tại đây:

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

Phạm vi của API Nền tảng AdSense như sau: https://www.googleapis.com/auth/adsense

Ví dụ về Python

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

Ở giai đoạn này, bạn đã sẵn sàng bắt đầu gọi các API. Vì thư viện ứng dụng chưa được hỗ trợ cho API Nền tảng AdSense, nên bạn phải gửi yêu cầu HTTP trực tiếp. Bạn phải thêm mã truy cập dưới dạng tiêu đề trong yêu cầu HTTP. Tiêu đề sẽ có dạng như sau:

Authorization: OAuth <credentials>

Ví dụ có trong các trang API.