凡是存取 Google API 的應用程式,都必須驗證自身的身分和意圖是否符合 Google 的 API 服務使用者資料政策規定。為保護您與 Google 和您應用程式的共用使用者,您的同意畫面和應用程式可能需要 Google 驗證。
應用程式必須符合下列所有條件,才能要求進行驗證:
- 在 Google API Console中,應用程式設定成了「外部」使用者類型。這表示任何擁有 Google 帳戶的使用者都能使用您的應用程式。
- 如果您想讓應用程式在 OAuth 同意畫面中顯示標誌或顯示名稱,
加入通過驗證的品牌資訊,可以提高使用者認出您的品牌並決定授予應用程式存取權的可能性。此外,若是使用者或 Google Workspace 管理員審查可存取該帳戶的第三方應用程式和服務,驗證品牌資訊也可能導致企業遭到撤銷。提交驗證之後,OAuth 同意畫面品牌驗證程序通常需要 2 到 3 個工作天才能完成。
如果您沒有提交品牌驗證申請,可能會降低使用者對您資料要求的信任,進而減少使用者授權次數,並在之後撤銷。
OAuth 同意畫面
同意畫面會讓使用者知道要求存取使用者資料的使用者,以及應用程式需要代表他們存取的資料類型 (如圖 1 的方塊 2 所示)。
應用程式完成品牌驗證程序並獲得核准後,授權帳戶就更能清楚瞭解應用程式的身分和使用者資料政策。清楚瞭解相關資訊,可讓帳戶持有人在 Google 帳戶頁面審查可能的撤銷情況時,更有機會授權您的要求並保有存取權。您在 API Console 中為 OAuth Consent Screen page 設定的內容會填入下列元件:
- 您的應用程式名稱和標誌 (如圖 1 的 Box 1 所示)
- 您的使用者支援電子郵件,會在選取應用程式名稱後顯示 (圖 1 的方塊 2)
- 隱私權政策和服務條款的連結 (圖 1 的方塊 3)
![編號標籤說明含有已核准品牌資訊的專案 OAuth 同意畫面的不同功能。](https://developers-dot-devsite-v2-prod.appspot.com/static/identity/protocols/oauth2/images/examples/oauth-consent-screen-components.png?authuser=6&hl=zh-tw)
授權網域
在品牌驗證程序中,Google 會要求驗證與應用程式 OAuth 同意畫面和憑證相關聯的所有網域。我們要求您驗證可透過公開尾碼註冊的網域元件:「頂層網域」。舉例來說,透過 https://sub.example.com/product 應用程式首頁設定的 OAuth 同意畫面,會要求帳戶持有人驗證 example.com 網域的擁有權。
OAuth 同意畫面編輯器的「授權網域」部分必須包含用於「應用程式網域」區段 URI 的頂層網域。這些網域包括應用程式首頁、隱私權政策和服務條款。「授權網域」部分也需要加入「網頁應用程式」OAuth 用戶端類型授權的重新導向 URI 和/或 JavaScript 來源。
使用 Google Search Console 驗證授權網域的擁有權。具備網域擁有者權限的 Google 帳戶,必須與使用該授權網域的 API Console 專案相關聯。如要進一步瞭解 Google Search Console 中的網域驗證,請參閱「驗證網站擁有權」一文。
驗證準備步驟
凡是使用 Google API 要求資料存取權的應用程式,都必須執行下列步驟來完成品牌驗證:
- 確認應用程式不屬於「驗證規定例外狀況」一節中的任何用途。
- 確認您的應用程式符合相關聯 API 或產品的品牌宣傳要求。如需範例,請參閱 Google 登入範圍的品牌宣傳規範。
- 在 Google Search Console 中驗證專案的授權網域擁有權。請使用與專案相關聯的 Google 帳戶 API Console 做為「擁有者」或「編輯者」。
- 請確認 OAuth 同意畫面上的所有品牌宣傳資訊 (例如應用程式名稱、支援電子郵件、首頁 URI、隱私權政策 URI 等) 均能準確反映應用程式的身分。
應用程式首頁需求
請確認首頁符合下列規定:
- 您的首頁必須開放所有人存取,且不得僅供已登入網站的使用者存取。
- 首頁與審核中應用程式的關聯性必須明顯。
- 系統不會將 Google Play 商店中的應用程式資訊連結或 Facebook 粉絲專頁的連結視為有效的應用程式首頁。
應用程式隱私權政策連結規定
請確認您的應用程式隱私權政策符合下列規定:
- 您必須向使用者顯示隱私權政策,且該政策必須與應用程式首頁位於相同網域,而且須連結至 Google API Console的 OAuth 同意畫面。請注意,首頁必須包含應用程式功能說明、隱私權政策連結和選用服務條款。
- 隱私權政策必須揭露您的應用程式存取、使用、儲存或分享 Google 使用者資料的方式。 使用 Google 使用者資料的行為時,您必須遵循已發布隱私權政策揭露的做法。
如何提交應用程式進行驗證
Google API Console 專案可整理您所有的 API Console 資源。專案是由一組相關聯的 Google 帳戶組成,這些帳戶具備執行專案作業的權限、一組已啟用的 API,以及這些 API 的計費、驗證和監控設定。舉例來說,一項專案可包含一或多個 OAuth 用戶端、設定 API 供這些用戶端使用,並在使用者授權存取您的應用程式前設定 OAuth 同意畫面。
如有任何 OAuth 用戶端還無法投入實際工作環境,建議您將這些用戶端從要求驗證的專案中刪除。您可以在 Google API Console中執行這項操作。
送交驗證的步驟如下:
- 確認您的應用程式符合《Google API 服務條款》和《Google API 服務使用者資料政策》。
- 請在 API Console中保持專案關聯帳戶的擁有者和編輯者角色,以及 OAuth 同意畫面中的使用者支援電子郵件和開發人員聯絡資訊。確保團隊成員會收到任何新要求的通知。
- 前往 API ConsoleOAuth Consent Screen page。
- 按一下「Project selector」按鈕。
-
在隨即顯示的「Select from」(可用的選項) 對話方塊中,選取您的專案。如果您找不到專案,但已經知道專案 ID,則可在瀏覽器中以下列格式建構網址:
https://console.developers.google.com/apis/credentials/consent?project=[PROJECT_ID]
將 [PROJECT_ID] 替換成您要使用的專案 ID。
- 選取「Edit App」按鈕。
- 在 OAuth 同意畫面上輸入必要資訊,然後選取「儲存並繼續」按鈕。
- 使用「新增或移除範圍」按鈕,宣告應用程式要求的所有範圍。「非機密範圍」部分會預先填入 Google 登入作業所需的初始範圍組合。新增的範圍會歸類為非機密 sensitive, or restricted。
- 應用程式最多可提供三個連結,讓使用者連往相關的應用程式功能說明文件。
-
在後續步驟中,提供任何要求的應用程式相關資訊。
- 如果您提供的應用程式設定需要驗證,您可以提交應用程式進行驗證。填寫必填欄位,然後按一下「提交」,即可開始驗證程序。
在您提交應用程式後,Google 信任與安全團隊會透過電子郵件聯繫您,並提供他們所需的額外資訊或您必須完成的步驟。請查看「開發人員聯絡資訊」部分中的電子郵件地址,以及 OAuth 同意畫面的支援電子郵件地址,索取其他資訊。您也可以查看專案的 OAuth 同意畫面頁面,確認專案目前的審查狀態,包括在等待您的回應期間,審核程序是否已暫停。
驗證規定例外狀況
如果您的應用程式會在以下各節所述的任何情境中使用,則無須送交審查。
個人使用
其中一種用途是應用程式的唯一使用者,或應用程式只有少數使用者使用,所有使用者都能辨識您。您和少數使用者或許會願意透過未經驗證的應用程式畫面推動進階作業,並授予個人帳戶存取應用程式的權限。
用於開發、測試或測試環境的專案
為遵守 Google OAuth 2.0 政策,建議您為測試和實際工作環境建立不同的專案。除非您想讓應用程式向任何擁有 Google 帳戶的使用者提供應用程式,否則建議您只提交應用程式進行驗證。因此,如果您的應用程式處於開發、測試或階段,就不必進行驗證。
如果應用程式處於開發或測試階段,您可以在「測試」的預設設定中保留「發布狀態」。這項設定表示您的應用程式仍處於開發階段,且僅供您新增至測試使用者清單的使用者使用。您必須管理與應用程式開發或測試相關的 Google 帳戶清單。
![警告訊息,指出 Google 尚未驗證正在進行測試的應用程式。](https://developers-dot-devsite-v2-prod.appspot.com/static/identity/protocols/oauth2/images/examples/tester-warning-screen.png?authuser=6&hl=zh-tw)
僅限服務擁有的資料
如果您的應用程式僅透過服務帳戶存取自己的資料,而且並未存取任何使用者資料 (連結至 Google 帳戶),則您不需要提交驗證用資料。
如要瞭解服務帳戶,請參閱 Google Cloud 說明文件中的服務帳戶。如需使用服務帳戶的操作說明,請參閱針對伺服器對伺服器應用程式使用 OAuth 2.0。
僅限內部使用
也就是說,只有您的 Google Workspace 或 Cloud Identity 機構的使用者能使用應用程式。專案必須為機構所有,且 OAuth 同意畫面需要設定「內部」使用者類型。在此情況下,您的應用程式可能需要取得機構管理員的核准。詳情請參閱「Google Workspace 的其他注意事項」。
- 進一步瞭解公開和內部應用程式。
- 如要瞭解如何將應用程式標示為內部使用,請參閱常見問題「如何將應用程式標示為僅限內部使用?」
全網域安裝
如果您打算應用程式只以 Google Workspace 或 Cloud Identity 機構的使用者為目標對象,而且一律使用全網域安裝功能,則應用程式不需要驗證應用程式。這是因為在網域層級安裝作業,網域管理員就能授權第三方和內部應用程式存取您使用者資料。只有機構管理員才能將應用程式加入許可清單,以在其網域中使用。
請參閱「我的應用程式使用者有來自其他 Google Workspace 網域的企業帳戶」,瞭解如何將應用程式設為全網域安裝。