敏感範圍驗證

如果應用程式要求使用 Google API 存取 Google 使用者資料的權限,您可能需要先完成驗證程序,才能首次公開發布應用程式。

這項規定是否適用於您的應用程式,主要取決於兩個因素:

  1. 您存取的使用者資料類型:公開個人資料資訊、日曆項目、雲端硬碟中的檔案、特定健康與健身資料等。
  2. 所需的存取權限等級 (唯讀、讀取和寫入等)。

使用 OAuth 2.0 取得 Google 帳戶的資料存取權時,您可以使用稱為「範圍」的字串,指定要代替使用者存取的資料類型。如果應用程式要求的範圍屬於「敏感」或「受限制」,您可能需要完成驗證程序,除非應用程式的用途符合例外狀況

私密範圍的範例包括讀取 Google 日曆中儲存的活動、在 Google 聯絡人中儲存新聯絡人,或刪除 YouTube 影片。如要進一步瞭解可用的範圍及其分類,請參閱應用程式所呼叫的 API 端點參考說明文件,以及為 API 發布的任何相關授權指南。

您必須要求最少的存取範圍,以便提供所需功能所需的使用者資料。舉例來說,如果 API 和相關端點可提供較狹隘的範圍,那麼只讀取資料的應用程式就不得要求讀取、寫入及刪除內容的存取權。您從 Google API 收到的資料,必須依據 API 政策和您在應用程式動作和隱私權政策中向使用者說明的方式使用。

請務必將應用程式或任何需要新範圍的新功能的驗證時間納入您的發布計畫。敏感範圍驗證程序通常需要 3 到 5 個工作天才能完成。請注意,您的應用程式可能符合品牌驗證資格,可做為敏感範圍驗證要求的子集。

瞭解機密範圍

敏感範圍需要經過 Google 審查,才能由任何 Google 帳戶授予存取權。Google Workspace 機構管理員可以限制存取權,以防止機構未明確標示為信任的 OAuth 客戶端 ID 存取敏感範圍。

瞭解範圍使用情形

  • 查看應用程式使用的或您要使用的權限範圍。如要找出現有的範圍用途,請檢查應用程式原始碼,查看是否有任何範圍透過授權要求傳送。
  • 判斷每個要求的範圍是否為應用程式功能的預期動作所需,並使用提供該功能所需的最低權限。Google API 通常會在產品的 Google 開發人員頁面上提供端點的參考說明文件,其中包含呼叫端點或其中特定屬性所需的範圍。如要進一步瞭解應用程式呼叫的 API 端點所需的存取權範圍,請參閱這些端點的參考說明文件。
  • 您從 Google API 收到的資料,必須依據 API 政策和您在應用程式動作和隱私權政策中向使用者說明的方式使用。
  • 請參閱 API 說明文件,進一步瞭解各個範圍,包括可能的 sensitive or restricted 狀態。
  • 在 的 中宣告應用程式使用的所有權限範圍。您指定的權限會分組為機密或受限制類別,以便醒目顯示需要完成的其他驗證程序。
  • 找出與整合項目所用資料相符的最佳範圍、瞭解其用途、再次確認所有項目在測試環境中仍能正常運作,然後準備提交驗證。
表格會顯示 API 名稱、其中一個敏感範圍,以及範圍涵蓋內容的說明。
圖 1. 在 OAuth 同意畫面設定範圍頁面中顯示的敏感範圍範例。

驗證作業的準備步驟

所有使用 Google API 要求存取資料的應用程式,都必須完成下列步驟來完成品牌驗證:

  1. 確認您的應用程式不屬於「驗證規定例外狀況」一節中的任何用途。
  2. 請確認您的應用程式符合相關 API 或產品的品牌化規定。例如,請參閱 Google 登入權限的品牌宣傳指南
  3. Google Search Console 中驗證專案的授權網域擁有權。使用與 專案相關聯的 Google 帳戶,以擁有者或編輯者的身分登入。
  4. 確認 OAuth 同意聲明畫面上的所有品牌資訊 (例如應用程式名稱、支援電子郵件、首頁 URI、隱私權政策 URI 等) 如實代表應用程式的身分。

應用程式首頁規定

請確認首頁符合下列規定:

  • 首頁必須開放給所有人存取,而非僅限網站已登入使用者存取。
  • 首頁與審查中的應用程式必須相關。
  • 應用程式在 Google Play 商店或 Facebook 頁面上的資訊頁面連結,不視為有效的應用程式首頁。

應用程式隱私權政策連結規定

請確認應用程式的隱私權政策符合下列規定:

  • 隱私權政策必須讓使用者看見,並與應用程式首頁位於相同網域,且在 的 OAuth 同意畫面中提供連結。請注意,首頁必須包含應用程式功能的說明,以及隱私權政策和選用服務條款的連結。
  • 隱私權政策必須揭露應用程式存取、使用、儲存或分享 Google 使用者資料的方式。 您必須將 Google 使用者資料的使用範圍限制在已發布的隱私權政策中揭露的做法。

如何將應用程式送交驗證

專案可整理所有 資源。專案是由一組相關聯的 Google 帳戶組成,這些帳戶具有執行專案作業的權限,以及一組已啟用的 API,以及這些 API 的帳單、驗證和監控設定。舉例來說,專案可以包含一或多個 OAuth 用戶端,設定用戶端可使用的 API,以及在使用者授權存取應用程式前,向使用者顯示的 OAuth 同意畫面

如果任何 OAuth 用戶端尚未準備好用於實際工作環境,建議您從要求驗證的專案中刪除這些用戶端。您可以在 中執行這項操作。

如要提交驗證申請,請按照下列步驟操作:

  1. 請確認您的應用程式符合《Google API 服務條款》和《Google API 服務使用者資料政策》的規定。
  2. 請在 中,將專案相關聯帳戶的擁有者和編輯者角色保持在最新狀態,以及 OAuth 同意聲明畫面的使用者支援電子郵件和開發人員聯絡資訊。這可確保團隊中的正確成員收到任何新要求的通知。
  3. 前往 OAuth 。
  4. 按一下「專案選擇器」按鈕。
  5. 在隨即顯示的「Select from」對話方塊中,選取所需專案。如果找不到專案,但您知道專案 ID,可以在瀏覽器中使用下列格式建構網址:

    ?project=[PROJECT_ID]

    [PROJECT_ID] 替換為要使用的專案 ID。

  6. 選取「編輯應用程式」按鈕。
  7. 在 OAuth 同意畫面頁面上輸入必要資訊,然後選取「儲存並繼續」按鈕。
  8. 請使用「新增或移除範圍」按鈕,宣告應用程式要求的所有範圍。「非敏感範圍」部分會預先填入 Google 登入所需的初始範圍組合。新增的範圍會歸類為非機密範圍 sensitive, or restricted
  9. 請提供最多三個相關文件連結,說明應用程式中相關功能的相關資訊。
  10. 在後續步驟中,請提供應用程式相關的任何額外資訊。

    1. Prepare a detailed justification for each requested sensitive scope, as well as an explanation for why a narrower scope isn't sufficient. For example: "My app will use https://www.googleapis.com/auth/calendar to show a user's Google calendar data on the scheduling screen of my app. This lets users manage their schedules through my app and sync the changes with their Google calendar."
    2. Prepare a video that fully demonstrates how a user initiates and grants access to the requested scopes and shows, in detail, the usage of the granted sensitive and restricted scopes in the app. Upload the video to YouTube Studio and set its Visibility as Unlisted. You need to provide a link to the demonstration video in the YouTube link field.

      1. Show the OAuth grant process that users will experience, in English. This includes the consent flow and, if you use Google Sign-In, the sign-in flow.
      2. Show that the OAuth consent screen correctly displays the App Name.
      3. Show that the browser address bar of the OAuth consent screen correctly includes your app's OAuth client ID.
      4. To show how the data will be used, demonstrate the functionality that's enabled by each sensitive scope that you request.
  11. 如果您提供的應用程式設定需要驗證,您可以提交應用程式進行驗證。填寫必填欄位,然後按一下「提交」即可開始驗證程序。

提交應用程式後,Google 信任與安全團隊會透過電子郵件回覆,告知您需要提供的其他資訊,或必須完成的步驟。請檢查「開發人員聯絡資訊」部分的電子郵件地址,以及 OAuth 同意畫面的支援電子郵件地址,瞭解是否有其他資訊要求。您也可以查看專案的 OAuth 同意畫面頁面,確認專案目前的審查狀態,包括在等待您回覆時,審查程序是否已暫停。

驗證規定的例外狀況

如果您的應用程式將用於下列章節所述的任何情境,則不必送交審查。

個人使用

一個用途是,如果您是應用程式的唯一使用者,或是應用程式只有少數使用者,且您都認識這些使用者,您和少數使用者可能會覺得,直接略過未經驗證的應用程式畫面,並授予個人帳戶存取應用程式的權限,會比較方便。

在開發、測試或前置環境中使用的專案

為了遵守 Google OAuth 2.0 政策,建議您為測試環境和實際工作環境建立不同的專案。如要讓擁有 Google 帳戶的使用者都能存取您的應用程式,建議您只提交應用程式進行驗證。因此,如果您的應用程式處於開發、測試或預備階段,就不需要驗證。

如果應用程式處於開發或測試階段,您可以將發布狀態保留在預設的測試狀態。這項設定表示您的應用程式仍在開發階段,只有您新增至測試使用者清單的使用者才能存取。您必須管理應用程式開發或測試作業所涉及的 Google 帳戶清單。

2
警告訊息:Google 尚未驗證正在測試的應用程式。
圖 2 測試人員警告畫面

僅限服務擁有的資料

如果您的應用程式使用服務帳戶僅存取自身資料,且不會存取任何使用者資料 (已連結至 Google 帳戶),則您不需要提交驗證。

如要瞭解服務帳戶,請參閱 Google Cloud 說明文件中的「服務帳戶」一文。如需服務帳戶的使用說明,請參閱「針對伺服器對伺服器應用程式使用 OAuth 2.0」。

僅限內部使用

也就是說,只有貴機構的 Google Workspace 或 Cloud Identity 使用者才能使用這個應用程式。專案必須由機構擁有,且其 OAuth 同意畫面需要針對內部使用者類型進行設定。在這種情況下,您的應用程式可能需要組織管理員核准。詳情請參閱「Google Workspace 的其他注意事項」。

全網域安裝

如果您打算讓應用程式只鎖定 Google Workspace 或 Cloud Identity 機構的使用者,並且一律使用全網域安裝,則應用程式就不需要驗證。這是因為全網域安裝作業可讓網域管理員授權第三方和內部應用程式存取使用者資料。只有機構管理員可以將應用程式新增至允許清單,以便在其網域中使用。

如要瞭解如何讓應用程式成為全網域安裝,請參閱「我的應用程式有使用其他 Google Workspace 網域企業帳戶的使用者」這篇常見問題文章。