Hướng dẫn này cho biết cách đảm bảo ứng dụng và thông tin đăng nhập của người dùng được bảo mật.
Hoàn tất quy trình xác minh ứng dụng OAuth
Phạm vi OAuth 2.0 cho API Google Ads được phân loại là phạm vi bị hạn chế, tức là bạn phải hoàn tất quy trình xác minh ứng dụng OAuth trước khi đưa ứng dụng vào sản xuất. Hãy xem tài liệu về Google Identity, bài viết trên Trung tâm trợ giúp về các ứng dụng chưa được xác minh và tài liệu về cách thiết lập màn hình đồng ý OAuth để tìm hiểu thêm.
Bảo mật thông tin đăng nhập của ứng dụng
Bạn nên bảo mật mã ứng dụng khách OAuth 2.0 và khoá bí mật của ứng dụng khách. Thông tin xác thực này giúp người dùng và Google xác định ứng dụng của bạn, do đó, bạn cần xử lý cẩn thận. Bạn nên coi thông tin đăng nhập ứng dụng này như mật khẩu. Đừng chia sẻ các thông tin này bằng những cơ chế không an toàn như đăng trên diễn đàn công khai, gửi tệp cấu hình chứa thông tin đăng nhập này trong tệp đính kèm email, mã hoá cứng thông tin đăng nhập hoặc cam kết thông tin đăng nhập với kho lưu trữ mã. Bạn nên sử dụng một trình quản lý khoá bí mật như Trình quản lý khoá bí mật của Google Cloud hoặc Trình quản lý khoá bí mật của AWS khi có thể.
Nếu khoá bí mật ứng dụng OAuth 2.0 của bạn bị lộ, bạn có thể đặt lại khoá bí mật. Bạn cũng có thể đặt lại mã thông báo nhà phát triển.
Bảo mật mã của nhà phát triển
Mã thông báo nhà phát triển cho phép bạn thực hiện các lệnh gọi API đến một tài khoản, nhưng không có hạn chế về tài khoản mà bạn có thể dùng để thực hiện các lệnh gọi. Do đó, người khác có thể dùng mã thông báo nhà phát triển bị xâm nhập để thực hiện các lệnh gọi được gán cho ứng dụng của bạn. Để tránh trường hợp này, hãy thực hiện các biện pháp phòng ngừa sau:
Hãy coi mã thông báo của nhà phát triển như mật khẩu. Đừng chia sẻ mã thông báo này bằng các cơ chế không an toàn, chẳng hạn như đăng trên diễn đàn công khai hoặc gửi tệp cấu hình chứa mã thông báo của nhà phát triển dưới dạng tệp đính kèm email. Bạn nên sử dụng một trình quản lý khoá bí mật như Trình quản lý khoá bí mật của Google Cloud hoặc Trình quản lý khoá bí mật của AWS khi có thể.
Nếu mã thông báo nhà phát triển của bạn bị xâm phạm, bạn nên đặt lại mã thông báo đó.
- Đăng nhập vào tài khoản người quản lý Google Ads mà bạn đã sử dụng khi đăng ký Google Ads API.
- Chuyển đến phần Công cụ và cài đặt > Trung tâm API.
- Nhấp vào mũi tên thả xuống bên cạnh Mã thông báo nhà phát triển.
- Nhấp vào đường liên kết Đặt lại mã thông báo. Mã thông báo nhà phát triển cũ của bạn sẽ ngừng hoạt động ngay lập tức.
- Cập nhật cấu hình phát hành công khai của ứng dụng để sử dụng mã thông báo mới của nhà phát triển.
Bảo mật tài khoản dịch vụ
Tài khoản dịch vụ yêu cầu tính năng mạo danh trên toàn miền để hoạt động chính xác với Google Ads API. Ngoài ra, bạn phải là khách hàng của Google Workspace để thiết lập tính năng mạo danh trên toàn miền. Vì những lý do này, bạn không nên sử dụng tài khoản dịch vụ khi thực hiện các lệnh gọi API Google Ads. Tuy nhiên, nếu quyết định sử dụng tài khoản dịch vụ, bạn nên bảo mật các tài khoản đó như sau:
Hãy coi khoá tài khoản dịch vụ và tệp JSON như mật khẩu. Bảo mật các khoá này bằng một trình quản lý bí mật như Google Cloud Secret Manager hoặc AWS Secret Manager nếu có thể.
Hãy làm theo các phương pháp hay nhất khác của Google Cloud để bảo mật và quản lý tài khoản dịch vụ của bạn.
Bảo mật mã thông báo người dùng
Nếu ứng dụng của bạn cho phép nhiều người dùng, bạn nên thực hiện thêm các bước để bảo vệ mã làm mới và mã truy cập của người dùng. Lưu trữ mã thông báo một cách an toàn khi không hoạt động và không bao giờ truyền mã thông báo dưới dạng văn bản thuần tuý. Sử dụng hệ thống lưu trữ an toàn phù hợp với nền tảng của bạn.
Xử lý việc thu hồi và hết hạn mã làm mới
Nếu ứng dụng của bạn yêu cầu mã làm mới OAuth 2.0 trong quá trình uỷ quyền, bạn cũng phải xử lý việc mã này bị vô hiệu hoá hoặc hết hạn. Mã làm mới có thể không hợp lệ vì nhiều lý do và ứng dụng của bạn phải phản hồi một cách thích hợp bằng cách uỷ quyền lại cho người dùng trong phiên đăng nhập tiếp theo hoặc dọn dẹp dữ liệu của họ nếu cần. Các công việc ngoại tuyến (chẳng hạn như công việc cron) phải phát hiện và ghi lại những tài khoản có mã làm mới đã hết hạn, thay vì tiếp tục đưa ra các yêu cầu không thành công. Google có thể điều chỉnh tốc độ của những ứng dụng tạo ra nhiều lỗi trong một khoảng thời gian dài để duy trì tính ổn định của các máy chủ API.
Quản lý sự đồng ý cho nhiều phạm vi
Nếu ứng dụng của bạn yêu cầu cấp quyền cho nhiều phạm vi OAuth 2.0, thì người dùng có thể không cấp tất cả các phạm vi OAuth mà bạn đã yêu cầu. Ứng dụng của bạn phải xử lý việc từ chối phạm vi bằng cách tắt các tính năng có liên quan. Bạn chỉ có thể nhắc người dùng một lần nữa sau khi họ cho thấy rõ ý định sử dụng tính năng cụ thể yêu cầu phạm vi. Sử dụng uỷ quyền từng phần để yêu cầu các phạm vi OAuth thích hợp trong những trường hợp như vậy.
Nếu các tính năng cơ bản của ứng dụng yêu cầu nhiều phạm vi, hãy giải thích yêu cầu này cho người dùng trước khi nhắc họ đồng ý.