OAuth2 đóng vai trò quan trọng trong việc xác thực và ủy quyền khi sử dụng API Google Ads. Để tối ưu hóa quá trình truy cập và đảm bảo bảo mật cho các ứng dụng, việc hiểu rõ cách quản lý mã truy cập và làm mới là vô cùng cần thiết. Bài viết này sẽ cung cấp cái nhìn chi tiết về cách thức OAuth2 hoạt động, phạm vi quyền truy cập, cũng như cách thiết lập truy cập ngoại tuyến cho ứng dụng. Đây là hướng dẫn hữu ích cho những người dùng nâng cao và những ai không sử dụng thư viện ứng dụng của Google.
Thư viện ứng dụng của chúng tôi tự động xử lý các quy trình được liệt kê dưới đây, vì vậy bạn chỉ cần tiếp tục đọc nếu quan tâm đến cách hoạt động bên trong hoặc nếu bạn không sử dụng một trong các thư viện ứng dụng của chúng tôi.
Phần này chủ yếu dành cho người dùng nâng cao, những người đã quen thuộc với các thông số của OAuth 2.0 và biết cách triển khai OAuth2 khi làm việc với các API của Google.
Lưu ý: API Google Ads hiện không hỗ trợ đăng nhập đồng thời với dữ liệu yêu cầu truy cập kết hợp hoặc uỷ quyền trên toàn miền (2LO).
Bạn muốn tìm hiểu thêm về các phương thức xác thực trong API Google Ads?
Hãy xem qua thư viện video của chúng tôi để biết thêm chi tiết về các quy trình xác thực và uỷ quyền.
Phạm vi
Một mã truy cập duy nhất có thể cung cấp quyền truy cập vào nhiều API khác nhau. Tham số scope điều chỉnh tập hợp các tài nguyên và hoạt động mà mã truy cập đó được phép truy cập. Khi yêu cầu mã truy cập, ứng dụng của bạn sẽ gửi một hoặc nhiều giá trị trong tham số scope này.
Phạm vi của API Google Ads là:
https://www.googleapis.com/auth/adwords
Truy cập ngoại tuyến
Thông thường, một ứng dụng khách API Google Ads có thể yêu cầu quyền truy cập ngay cả khi không có kết nối mạng. Ví dụ, ứng dụng của bạn có thể cần chạy các tác vụ hàng loạt trong khi người dùng không trực tuyến hoặc không duyệt web.
Để yêu cầu quyền truy cập ngoại tuyến cho ứng dụng web, hãy đảm bảo bạn đã đặt tham số access_type thành “offline”. Bạn có thể tham khảo thêm chi tiết trong Hướng dẫn OAuth2 của Google.
Đối với các ứng dụng dành cho máy tính, quyền truy cập khi không có mạng được kích hoạt mặc định và bạn không cần phải yêu cầu rõ ràng.
Tiêu đề của yêu cầu
Tiêu đề gRPC
Khi sử dụng API gRPC, bạn cần thêm mã truy cập vào từng yêu cầu. Bạn có thể liên kết đối tượng Credential với Channel để sử dụng mã truy cập cho mọi yêu cầu trên kênh đó. Đồng thời, bạn có thể gửi thông tin xác thực tùy chỉnh cho mỗi lần gọi API. Hướng dẫn ủy quyền của gRPC cung cấp thêm chi tiết về cách xử lý quá trình ủy quyền.
Tiêu đề REST
Khi sử dụng API REST, bạn cần chuyển mã truy cập qua tiêu đề HTTP Authorization. Ví dụ về yêu cầu HTTP như sau:
GET /v17/customers/123456789 HTTP/2
Host: googleads.googleapis.com
User-Agent: INSERT_USER_AGENT
Accept: */*
Authorization: Bearer INSERT_ACCESS_TOKEN
developer-token: INSERT_DEVELOPER_TOKEN
Mã truy cập và làm mới
Trong hầu hết các trường hợp, bạn cần lưu trữ mã làm mới một cách an toàn để sử dụng sau này. Để biết thêm chi tiết về cách yêu cầu quyền truy cập và làm mới mã thông báo, hãy tham khảo hướng dẫn dành riêng cho loại ứng dụng của bạn:
- Ứng dụng dành cho máy tính
- Ứng dụng web phía máy chủ
Thời hạn làm mới mã thông báo
Để biết thêm chi tiết về thời gian hết hạn của mã làm mới, hãy tham khảo tài liệu OAuth của Google Identity Platform.
Thời hạn của mã truy cập
Mã truy cập sẽ hết hạn sau một khoảng thời gian nhất định (dựa trên giá trị expires_in), sau đó mã sẽ không còn hiệu lực. Bạn có thể sử dụng mã làm mới để yêu cầu một mã truy cập mới khi mã hiện tại hết hạn. Theo mặc định, thư viện ứng dụng của chúng tôi sẽ tự động làm mới mã truy cập khi nó hết hạn.
Việc nắm vững các cơ chế xác thực và ủy quyền OAuth2 là yếu tố cốt lõi để tương tác hiệu quả với API Google Ads. Từ việc quản lý mã truy cập đến làm mới mã thông báo, tất cả đều cần được xử lý cẩn thận để đảm bảo an toàn cho dữ liệu và duy trì hiệu suất của ứng dụng. Đừng quên thiết lập các quy trình làm mới mã truy cập tự động và lưu trữ thông tin một cách bảo mật, giúp ứng dụng của bạn luôn sẵn sàng truy cập ngay cả khi không có kết nối mạng. Thực hiện đúng các bước này sẽ giúp bạn tối ưu hóa trải nghiệm và hiệu quả khi sử dụng API Google Ads.
