存取 Google Cloud 服務和 API

本頁說明如何透過 Colab Enterprise 筆記本存取 Google Cloud 服務和 API。

總覽

在 Colab Enterprise 筆記本中執行程式碼時,您可以使用與 Google 帳戶相關聯的憑證 (也稱為使用者憑證) 存取 Google Cloud 服務和 API。這表示您使用的執行階段與使用者具有相同的 Google Cloud 存取權層級。這樣一來,您就能更輕鬆地編寫及執行與 Google Cloud 服務和 API 互動的程式碼。

Colab Enterprise 可以使用應用程式預設憑證 (ADC),向 Google Cloud 服務和 API 驗證使用者憑證。本頁說明如何透過下列方式將使用者憑證提供給 ADC:

事前準備

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI, Dataform, and Compute Engine APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI, Dataform, and Compute Engine APIs.

    Enable the APIs

  8. 必要的角色

    如要取得存取 Colab Enterprise 筆記本中 Google Cloud 服務和 API 的權限,請要求管理員授予您專案的 Colab Enterprise 管理員 (roles/aiplatform.colabEnterpriseAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

    您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

    使用已啟用使用者憑證的執行階段

    您可以使用已啟用使用者憑證的預設執行階段,也可以使用從執行階段範本建立的任何執行階段,並啟用使用者憑證。

    如果沒有啟用使用者憑證的執行階段範本,請務必建立一個。建立執行階段範本時,您必須啟用或停用使用者憑證。這項設定之後無法修改。

    連線至已啟用使用者憑證的執行階段

    如要連線至已啟用使用者憑證的執行階段,請按照下列步驟操作:

    1. 在 Google Cloud 控制台中,前往 Colab Enterprise 的「My notebooks」(我的筆記本) 頁面。

      前往「我的筆記本」

    2. 在「Region」(區域) 選單中,選取包含筆記本的區域。

    3. 按一下要開啟的筆記本。如果尚未建立筆記本,請建立筆記本

    4. 在筆記本中,按一下「其他連線選項」展開箭頭,然後選取「連線到執行階段」

      「Connect to Vertex AI runtime」(連線至 Vertex AI 執行階段) 對話方塊隨即開啟。

    5. 在「選取執行階段」部分,選取「連線至現有的執行階段」

    6. 如要選取現有的執行階段選項,請選取要連結的執行階段。如果清單中沒有任何執行階段,請建立執行階段連線至預設執行階段

    7. 在「執行階段詳細資料」表格中,確認「個人憑證」Enabled

    8. 按一下「連線」

    9. 如果這是您第一次連結已啟用使用者憑證的執行階段,系統會顯示「登入」對話方塊。

      如要授予 Colab Enterprise 使用者憑證存取權,請完成下列步驟:

      1. 在「登入」對話方塊中,按一下您的使用者帳戶。

      2. 選取「查看、編輯、設定和刪除您的資料...」 Google Cloud ,授予 Colab Enterprise 存取使用者憑證的權限。

        核取方塊旁邊的聲明內容為「查看、編輯、設定和刪除您的 Google Cloud 資料,以及查看您 Google 帳戶的電子郵件地址。」
      3. 按一下「繼續」

    使用使用者憑證存取 Google Cloud 服務和 API 時,請注意,如果您的 Google 帳戶在專案中沒有必要的 Identity and Access Management (IAM) 權限,程式碼可能無法存取部分資源。如果發生這種情況,請要求管理員授予必要權限。

    在筆記本中執行程式碼,向 ADC 提供使用者憑證

    如果執行階段未啟用使用者憑證,您仍可使用使用者憑證存取 Google Cloud 服務和 API。如要這麼做,請使用 Google Cloud CLI 將使用者憑證提供給 ADC。

    1. 使用下列指令建立憑證檔案:

      !gcloud auth application-default login

      系統會顯示「登入」對話方塊。

    2. 完成對話方塊,授予 Colab Enterprise 存取權。

      登入後,您的憑證會儲存在 ADC 使用的本機憑證檔案中。這個檔案儲存在執行階段的 VM 中。

    提供使用者憑證來建立本機 ADC 檔案時,請注意下列事項:

    • 如果沒有額外的參數或設定,使用者憑證可能無法用於某些方法和 API,例如 Cloud Translation API 或 Cloud Vision API。如果看到 API 未在專案中啟用,或是沒有可用的配額專案等錯誤訊息,請參閱「排解 ADC 設定問題」。

    • 本機 ADC 包含存取和更新權杖。任何有權存取檔案系統的使用者都能使用這些憑證。如果不再需要這些本機憑證,可以使用 gcloud auth application-default revoke 指令撤銷憑證。

    • 如果 Google 帳戶在專案中沒有必要的 Identity and Access Management (IAM) 角色,程式碼可能無法存取部分資源。如果發生這種情況,必須由他人授予您必要角色。

    • ADC 存取權僅限 Google Cloud。如果您透過 Google 帳戶存取其他服務,ADC 不會自動授予 Colab Enterprise 筆記本存取權,但您可以授予部分服務的額外存取權。舉例來說,如要授予 Google 雲端硬碟存取權,請在筆記本的程式碼儲存格中執行下列指令:

      !gcloud auth application-default login \
          --scopes="https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/cloud-platform"
      

    疑難排解

    本節說明如何解決與 Google Cloud 服務和 API 互動的程式碼執行問題。

    執行程式碼時找不到使用者憑證

    如果您嘗試在筆記本中執行與 Google Cloud 服務和 API 互動的程式碼,但尚未授予 Colab Enterprise 存取使用者憑證的權限,就會發生這個問題。

    錯誤訊息可能如下所示:

    Request had invalid authentication credentials.
    Expected OAuth 2 access token, login cookie or other valid authentication credential
    
    DefaultCredentialsError: Your default credentials were not found.
    

    以下是這個問題的常見原因和解決方法:

    • 您未完成首次連線至啟用使用者憑證的執行階段時,系統顯示的「登入」對話方塊。完成這個對話方塊後,您即授予 Colab Enterprise 存取使用者憑證的權限。

      如要解決這個問題,請嘗試重新連線至執行階段並授予存取權。

      如要驗證存取權是否已授予:

      1. 依序點選「帳戶」>「受管理 Google 帳戶」>「資料和隱私權」>「第三方應用程式和服務」

      2. 確認 Colab Enterprise 是否列在其中。

    • 首次連線至已啟用使用者憑證的執行階段時,系統會顯示「登入」對話方塊 (同意畫面),但您未選取使用者帳戶,因此 Colab Enterprise 無法存取您的使用者憑證。

      如何解決這個問題:

      1. Google Cloud 控制台中,按一下帳戶個人資料圖片,然後點選「Google 帳戶」

      2. 按一下「資料和隱私權」

      3. 在「您在應用程式和服務中的資料」中,按一下「第三方應用程式和服務」

      4. 按一下「Colab Enterprise」

      5. 在「Colab Enterprise 有權存取您 Google 帳戶中的部分資料」下方,按一下「查看詳細資料」

      6. 按一下 [移除存取權]

      7. 按一下「確認」。

        這會移除目前的存取權設定。

      8. 下次連線至已啟用使用者憑證的執行階段時,請務必在完成「登入」對話方塊時選取正確的使用者帳戶。

    • 彈出式視窗封鎖工具可能會導致 Colab Enterprise「登入」對話方塊 (同意畫面) 無法顯示。

      如要解決這個問題,請暫時啟用瀏覽器的彈出式視窗,然後再次嘗試連線至執行階段。

    • Google Workspace 的額外服務已關閉 Colab。

      如要解決這個問題,請在 Google Workspace 中啟用 Colab 服務。

      雖然這項異動是指 Colab,但也會影響 Colab Enterprise。

      Colab為所有人啟用

    • 企業服務限制可能會封鎖 Colab Enterprise 的存取權。

      如要找出問題,請 確認貴機構的服務限制並未封鎖 Google 服務存取權

      「服務狀態」應為「為所有人啟用」

    • 您使用的執行階段未啟用使用者憑證,且您尚未透過 Google Cloud CLI 將使用者憑證提供給應用程式預設憑證 (ADC)。

      如要解決這個問題,請參閱在筆記本中執行程式碼,向 ADC 提供使用者憑證

    後續步驟