受限制範圍驗證

某些 Google API (接受 機密 受限制 範圍的 API) 會對尋求存取消費者資料權限的應用程式設下規定。這些受限制範圍的額外規定要求應用程式證明自己是允許的應用程式類型,並提交其他審查,包括可能的安全性評估。

API 中受限制範圍的適用性,主要取決於應用程式提供相關功能所需的存取權限程度:唯讀、唯寫、讀取和寫入等。

使用 OAuth 2.0 取得 Google 帳戶的存取權,以便存取這類資料時,您可以使用稱為「範圍」的字串,指定要存取的資料類型和所需的存取權。如果應用程式要求機密 受限制範圍,則必須完成驗證程序,除非應用程式的用途符合 例外狀況

與敏感範圍相比,受限範圍的數量較少。 驗證 OAuth API 驗證常見問題包含目前的機密和受限制範圍清單。這些範圍可提供廣泛的 Google 使用者資料存取權,但您必須先完成範圍驗證程序,才能從任何 Google 帳戶要求範圍。如要瞭解這項規定,請參閱「Google API 服務使用者資料政策」和「特定 API 範圍的其他規定」或 特定產品的 Google 開發人員頁面。如果您在伺服器上儲存或傳輸受限制範圍的資料,就必須完成安全性評估

瞭解受限制的範圍

如果應用程式要求任何受限制範圍,且不符合例外狀況的資格,就必須符合 Google API 服務使用者資料政策的特定 API 範圍附加規定,或是產品的 Google 開發人員頁面中產品專屬規定,這需要更全面的審查程序。

瞭解範圍使用情形

  • 查看應用程式使用的或您要使用的權限範圍。如要找出現有的範圍用途,請檢查應用程式原始碼,查看是否有任何範圍透過授權要求傳送。
  • 判斷每個要求的範圍是否為應用程式功能的預期動作所需,並使用提供該功能所需的最低權限。Google API 通常會在產品的 Google 開發人員頁面上提供端點的參考說明文件,其中包含呼叫端點或其中特定屬性所需的範圍。如要進一步瞭解應用程式呼叫的 API 端點所需的存取權範圍,請參閱這些端點的參考說明文件。 For example, for an app that only uses Gmail APIs to occasionally send emails on a user's behalf, don't request the scope that provides full access to the user's email data.
  • 您從 Google API 收到的資料,必須依據 API 政策和您在應用程式動作和隱私權政策中向使用者說明的方式使用。
  • 請參閱 API 說明文件,進一步瞭解各個範圍,包括可能的 sensitive or restricted 狀態。
  • 在 的 中宣告應用程式使用的所有權限範圍。您指定的權限會分組為機密或受限制類別,以便醒目顯示需要完成的其他驗證程序。
  • 找出與整合項目所用資料相符的最佳範圍、瞭解其用途、再次確認所有項目在測試環境中仍能正常運作,然後準備提交驗證。

請務必將應用程式或任何需要新範圍的新功能的驗證時間納入您的發布計畫。如果應用程式會存取 Google 使用者資料,或有能力透過伺服器存取這類資料,就必須符合下列其中一項額外規定。在這種情況下,系統必須由 Google 核准的獨立第三方評估人員每年進行安全性評估。因此,受限制範圍的驗證程序可能需要數週才能完成。請注意,如果自上次通過 OAuth 同意畫面驗證後,品牌資訊有所變更,所有應用程式都必須先完成品牌驗證步驟,這項作業通常需要 2 到 3 個工作天。

允許的應用程式類型

某些應用程式類型可以存取每項產品的受限範圍。您可以在特定產品的 Google 開發人員頁面中找到應用程式類型,例如 Gmail API 政策。

您有責任瞭解並判斷應用程式類型。不過,如果您真的不確定應用程式的應用程式類型,可以在提交應用程式進行驗證時,針對「您會使用哪些功能?」問題,選取「無」選項。Google API 驗證團隊會判斷應用程式類型。

安全性評估

凡是要求存取 Google 使用者受限制資料,且能夠從第三方伺服器或透過第三方伺服器存取資料的應用程式,都必須接受 Google 安全性評估人員的安全性評估。這項評估可驗證所有存取 Google 使用者資料的應用程式,確保這些應用程式能夠安全地處理資料,並在使用者要求時刪除使用者資料,進而保護 Google 使用者的資料安全。

為使安全性評估標準化,我們採用 App Defense Alliance 雲端應用程式安全性評估架構 (CASA)

如先前所述,為了繼續存取任何已驗證的受限制範圍,應用程式必須重新驗證是否符合規定,並在評估人員的評估函 (LOA) 核准日期後,至少每 12 個月完成一次安全性評估。如果應用程式新增設限範圍,如果先前的安全性評估未涵蓋該範圍,應用程式可能需要重新評估。

當應用程式需要重新認證時,Google 審查團隊會傳送電子郵件給您。為確保團隊中的正確成員收到這項年度執行作業的通知,請將其他 Google 帳戶與您的 專案建立連結,並將其設為擁有者或編輯者。這也有助於更新 Google OAuth 中指定的使用者支援和開發人員聯絡電子郵件地址。

驗證作業的準備步驟

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

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

應用程式首頁規定

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

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

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

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

  • 隱私權政策必須讓使用者看見,並與應用程式首頁位於相同網域,且在 的 OAuth 同意畫面中提供連結。請注意,首頁必須包含應用程式功能的說明,以及隱私權政策和選用服務條款的連結。
  • 隱私權政策必須揭露應用程式存取、使用、儲存或分享 Google 使用者資料的方式。 The privacy policy must comply with the Google API Services User Data Policy and the Limited Use requirements for restricted scopes. 您必須將 Google 使用者資料的使用範圍限制在已發布的隱私權政策中揭露的做法。
  • Review example cases of privacy policies that don't meet the Limited Use requirements.

如何將應用程式送交驗證

專案可整理所有 資源。專案是由一組相關聯的 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. Ensure your app complies with the Additional requirements for specific API scopes, which includes undergoing an annual security assessment if your app accesses restricted scope Google users' data from or through a third-party server.
    2. Ensure your app is one of the allowed types specified in the Limited Use section of the Additional requirements for specific API scopes page.
    3. If your app is a task automation platform, your demonstration video must showcase how multiple API workflows are created and automated, and in which directions user data flows.
    4. 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 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 and restricted scope that you request.
      5. If you use multiple clients, and therefore have multiple OAuth client IDs, show how the data is accessed on each OAuth client.
    5. Select your permitted application type from the "What features will you use?" list.
    6. Describe how you will use the restricted scopes in your app and why more limited scopes aren't sufficient.
  11. 如果您提供的應用程式設定需要驗證,您可以提交應用程式進行驗證。填寫必填欄位,然後按一下「提交」即可開始驗證程序。

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

驗證規定的例外狀況

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

個人使用

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

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

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

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

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

僅限服務擁有的資料

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

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

僅限內部使用

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

全網域安裝

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

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