遵守 OAuth 2.0 政策

當您準備好在開發環境中實作已實作的解決方案至應用程式的使用者時,可能需要採取其他步驟來遵守 Google 的 OAuth 2.0 政策。本指南說明如何在準備正式版應用程式時,遵守最常見的開發人員問題。可協助您盡量在少數錯誤的情況下盡可能觸及最多目標對象。

使用不同的專案執行測試與正式版

Google 的 OAuth 政策分別用於測試及正式版專案。部分政策和規定僅適用於正式版應用程式。您可能需要建立和設定個別專案,其中包含與所有 Google 帳戶可用於正式版應用程式的 OAuth 用戶端。

在實際工作環境中使用 Google OAuth 用戶端時,相較於透過相同應用程式測試或偵錯的 OAuth 用戶端,提供更穩定、可預測且安全的資料收集和儲存環境。您的實際工作環境專案可以提交驗證要求,因此必須遵守特定 API 範圍的額外規定,其中可能包含第三方安全性評估。

  1. Go to the Google API Console. Click Create project, enter a name, and click Create.
  2. 查看這項專案中與測試級別相關的 OAuth 用戶端。如果適用,請為實際工作環境專案中的實際工作環境用戶端建立類似的 OAuth 用戶端 (如適用)。
  3. 透過用戶端啟用任何使用的 API
  4. 檢查新專案中的 OAuth 同意畫面設定。

在實際工作環境中使用的 Google OAuth 用戶端不得包含測試環境、重新導向 URI 或 JavaScript 來源,僅供您或您的開發團隊使用。以下列舉幾個例子:

  • 個別開發人員的測試伺服器
  • 測試應用程式或預先發布版應用程式

維護專案的相關聯絡人清單

您可能需要針對 Google 和您啟用的個別 API 與您聯絡,以因應該服務或服務異動,以及專案和用戶端所需的新設定。查看專案的 IAM 清單,確保團隊的相關人員具備編輯或查看專案設定的權限。這些帳戶可能也會收到有關專案必要變更的電子郵件。

角色包含一組權限,可讓您對專案資源執行特定動作。專案編輯者有權修改狀態,例如變更專案的 OAuth 同意畫面。具備所有編輯者權限的專案擁有者可以新增或移除與專案相關聯的帳戶,或是刪除專案。專案擁有者也可說明可能設定帳單資訊的原因。專案擁有者為使用付費 API 的專案設定帳單資訊。

專案擁有者和編輯者必須保持最新狀態。您可以在專案中新增多個相關帳戶,確保能持續存取專案及進行相關維護。當專案或 Google 服務推出更新時,我們會傳送電子郵件至這些帳戶。Google Cloud 機構管理員必須確保可聯絡的聯絡人已連結至機構中的每項專案。如果我們沒有最新的專案聯絡資訊,可能會錯過重要訊息需要您採取行動。

準確呈現您的身分

提供有效的應用程式名稱,以及要向使用者顯示的標誌。這個品牌資訊必須準確代表應用程式的識別資訊。系統是透過 OAuth Consent Screen page設定應用程式品牌宣傳資訊。

在正式版應用程式中, OAuth 同意畫面中定義的品牌資訊會經過驗證,才能向使用者顯示。完成品牌驗證後,使用者更有可能授予應用程式存取權。基本應用程式資訊 (包括應用程式名稱、首頁、服務條款和隱私權政策) 會在使用者授予權限的當下、他們於查看現有授權時,或是 Google Workspace 管理員審查其所屬機構的應用程式使用者時顯示。

如果應用程式以不實身分或試圖欺騙使用者,Google 可以撤銷或停權 Google API 服務和其他 Google 產品和服務的存取權。

僅限您需要的要求範圍

在應用程式開發期間,您可能使用了 API 提供的範例範圍,在應用程式中建立概念驗證,以進一步瞭解 API 的功能。這些範例範圍通常比應用程式需求的最終實作需要更多資訊,原因是這些範圍可提供特定 API 的所有可能操作。例如,範例應用程式可能會要求讀取、寫入及刪除權限,但應用程式只需要讀取權限。要求相關權限,限制在實作應用程式所需的重要資訊中。

請參閱應用程式呼叫的 API 端點參考說明文件,並記下存取應用程式需要相關資料所需的範圍。請檢閱 API 提供的任何授權指南,並詳細說明其範圍,以納入最常見的使用情況。請盡可能為應用程式提供所需功能提供最少的資料存取權。

如要進一步瞭解這項規定,請參閱 OAuth 2.0 政策的「只有您需要的要求範圍」部分,以及 Google API 服務使用者資料政策的「要求相關權限」一節。

提交使用敏感或受限制範圍驗證的正式版應用程式

某些範圍會歸類為「敏感」或「受限制」,而且無法在未經正式版審查的情況下用於正式版應用程式。在 OAuth 同意畫面設定中輸入正式版應用程式使用的所有範圍。如果正式版應用程式使用機密或受限制範圍,您必須先提交這些範圍的驗證資訊,才能將授權加入授權要求中。

僅使用您擁有的網域

根據 Google 的 OAuth 同意畫面驗證程序,你必須驗證與專案首頁、隱私權政策、服務條款、授權重新導向 URI 或授權 JavaScript 來源相關聯的所有網域。請前往 OAuth 同意畫面編輯器的「授權網域」部分,查看應用程式使用的網域清單,並找出您所有且不通過驗證的網域。如要驗證專案授權網域的擁有權,請使用 Google Search Console。請使用與擁有者或編輯者 API Console 專案相關聯的 Google 帳戶。

如果專案使用的服務供應商與一般共用網域相同,建議您啟用允許使用自己的網域設定。部分供應商提供的是將服務對應至您現有網域的子網域。

代管正式版應用程式首頁

凡是使用 OAuth 2.0 的正式版應用程式都必須具備公開存取的首頁。您應用程式的潛在使用者可能會造訪首頁,進一步瞭解應用程式提供的功能。現有的使用者可能會查看現有的授權清單,也可以造訪應用程式的首頁,提醒他們繼續使用您的服務。

您的應用程式首頁必須包含應用程式功能的說明,以及隱私權政策和自選服務條款的連結。首頁必須位於您所擁有的已驗證網域。

使用安全的重新導向 URI 和 JavaScript 來源

網頁應用程式 OAuth 2.0 用戶端必須使用 HTTPS 重新導向 URI 和 JavaScript 來源 (而非純 HTTP) 保護資料。Google 可以拒絕並非源自或解析安全內容的 OAuth 要求。

請想想哪些第三方應用程式和指令碼可能有權存取權杖並傳回您網頁的使用者憑證。透過重新導向 URI 位置 (僅限於驗證及儲存權杖資料) 限制機密資料的存取權。

後續步驟

確認您的應用程式符合本頁的 OAuth 2.0 政策後,請參閱送交品牌驗證一文,進一步瞭解驗證程序。