本指南說明如何確保應用程式和使用者憑證的安全性。
完成 OAuth 應用程式驗證
Google Ads API 的 OAuth 2.0 範圍屬於受限範圍,也就是說,您必須先完成 OAuth 應用程式驗證程序,才能將應用程式推送至正式版。詳情請參閱 Google Identity 說明文件和說明中心文章。
保護應用程式憑證
請保護應用程式的 OAuth 2.0 用戶端 ID 和用戶端密碼。這些憑證可協助使用者和 Google 辨識您的應用程式,因此請謹慎處理。您應將這些應用程式憑證視為密碼。請勿使用不安全的機制分享這些憑證,例如在公開論壇上發布、透過電子郵件附件傳送含有這些憑證的設定檔、將憑證硬式編碼,或是將憑證提交至程式碼存放區。建議您盡可能使用密鑰管理工具,例如 Google Cloud 密鑰管理工具或 AWS Secret Manager。
如果 OAuth 2.0 用戶端密鑰遭到入侵,您可以重設密鑰。開發人員也可以重設開發人員權杖。
保護開發人員權杖
開發人員權杖可讓您對帳戶發出 API 呼叫,但不限制可用來發出呼叫的帳戶。因此,如果開發人員憑證遭到入侵,其他人就能使用該憑證,對您的應用程式發出呼叫。為避免發生這種情況,請採取下列預防措施:
請將開發人員權杖視為密碼。請勿使用不安全的機制分享,例如在公開論壇上發布訊息,或是將含有開發人員權杖的設定檔以電子郵件附件傳送。建議您盡可能使用密鑰管理工具,例如 Google Cloud Secret Manager 或 AWS Secret Manager。
如果開發人員權杖遭到入侵,請重設權杖。
- 登入您申請 Google Ads API 時使用的 Google Ads 管理員帳戶。
- 依序前往「工具與設定」>「API Center」。
- 按一下「開發人員憑證」旁的下拉式箭頭。
- 按一下「重設權杖」連結。舊版開發人員權杖應立即停止運作。
- 更新應用程式的正式版設定,以便使用新的開發人員權杖。
保護服務帳戶
服務帳戶需要全網域冒用功能,才能正確搭配 Google Ads API 運作。此外,您必須是 Google Workspace 客戶,才能設定全網域冒用功能。基於這些原因,我們建議您在發出 Google Ads API 呼叫時,不要使用服務帳戶。不過,如果您決定使用服務帳戶,請按照下列方式保護帳戶:
請將服務帳戶金鑰和 JSON 檔案視為密碼。盡可能使用密鑰管理工具 (例如 Google Cloud Secret Manager 或 AWS Secret Manager) 來保護密鑰。
請遵循 Google Cloud 的其他最佳做法,保護及管理服務帳戶。
保護使用者權杖
如果您的應用程式授權給多位使用者,請採取額外步驟保護使用者的重新整理和存取權杖。請在休息狀態下安全地儲存權杖,切勿以明文傳輸。使用適合平台的安全儲存系統。
處理更新權杖的撤銷和到期
如果應用程式要求 OAuth 2.0 更新憑證做為授權的一部分,您也必須處理憑證失效或到期的情況。刷新權杖可能會因各種原因失效,因此應用程式應以適當方式回應,例如在使用者下次登入時重新授權,或是視情況清除其資料。離線工作 (例如 Cron 工作) 應偵測並記錄已過期更新權杖的帳戶,而不是繼續提出失敗要求。為維持 API 伺服器的穩定性,Google 可能會限制長時間內產生大量錯誤的應用程式。
管理多個範圍的同意聲明
如果應用程式要求多個 OAuth 2.0 範圍的授權,使用者可能不會授予您要求的所有 OAuth 範圍。應用程式應透過停用相關功能,處理範圍遭拒絕的情況。只有在使用者明確表示要使用需要該範圍的特定功能時,您才能再次提示使用者。在這種情況下,請使用漸進式授權,要求適當的 OAuth 範圍。
如果應用程式的基本功能需要多個範圍,請先向使用者說明這項要求,再提示使用者同意。