您可以使用 Cloud API 存取 Google Cloud 程式碼中的產品和服務。這些 Cloud API 公開簡單的 JSON REST 介面,您可透過用戶端程式庫來呼叫該介面。
本文說明如何啟用 Cloud API,以及將 Cloud 用戶端程式庫新增至專案。
瀏覽 Cloud API
如要在 IDE 中探索所有可用的 Google Cloud API,請按照下列步驟操作:
依序前往「Tools」>「Google Cloud Code」>「Cloud APIs」。
「Manage Google Cloud APIs」視窗會依類別分組 Cloud API。您也可以使用「Search APIs」搜尋列找出特定 API。
按一下 API 即可查看更多詳細資料,例如狀態、對應用戶端程式庫的特定語言安裝說明,以及相關說明文件。
啟用 Cloud API
如要使用 API 詳細資料為專案啟用 Cloud API,請按照下列步驟操作:
在「Cloud API」詳細資料檢視畫面中,選取要啟用 Cloud API 的 Google Cloud 專案。
按一下「啟用 API」。
啟用 API 後,系統會顯示確認訊息。
新增 Cloud 用戶端程式庫
如要在 IntelliJ 中將程式庫新增至專案,請按照下列步驟操作:
Java Maven 專案
- 依序前往「Tools」 >「Google Cloud Code」 >「Cloud APIs」。
- 選取所需的程式庫類型,例如 Google Cloud 用戶端程式庫 (適用於多數專案) 或 Java Spring Google Cloud (如果專案使用 Java Spring,建議選用)。
- 請在 IDE 中按照「安裝用戶端程式庫」中的其餘操作說明進行操作 (如適用)。
- 設定完成後,按一下「關閉」。
「Manage Google Cloud APIs」對話方塊中的「Install Client Library」部分會顯示支援的程式庫。
其他所有專案
- 依序前往「Tools」 >「Google Cloud Code」 >「Cloud APIs」。
- 如要安裝 API,請按照 API 詳細資料頁面上列出的安裝說明操作,並選擇您偏好的語言。
如果您要開發 Java 應用程式,則需要將程式庫偏好設定為 Google Cloud 用戶端程式庫 (建議) 或 Java Spring Google Cloud。
- 設定完成後,按一下「關閉」。
「Manage Google Cloud APIs」對話方塊中的「Install Client Library」部分會顯示支援的程式庫。
使用 API 程式碼範例
如要在 API Explorer 中搜尋及使用各個 API 的程式碼範例,請按照下列步驟操作:
依序前往「Tools」>「Google Cloud Code」>「Cloud APIs」。
如要開啟詳細資料視圖,請按一下 API 名稱。
如要查看 API 的程式碼範例,請按一下「Code Samples」分頁標籤。
如要篩選範例清單,請輸入要搜尋的文字,或從「Language」下拉式選單中選取程式設計語言。
設定驗證方法
啟用必要的 API 並新增必要的用戶端程式庫後,您需要設定應用程式,才能順利完成驗證程序。設定取決於開發類型和執行平台。
完成相關驗證步驟後,應用程式就能進行驗證,並準備部署。
本機開發
本機電腦
如果您透過 IDE 登入 Google Cloud,Cloud Code 會確保您已設定應用程式預設憑證 (ADC)。如果您未使用 Cloud Code 登入,請手動執行 gcloud
auth application-default login
。
minikube
- 如果您透過 IDE 登入 Google Cloud,Cloud Code 會確保您已設定應用程式預設憑證 (ADC)。如果您未使用 Cloud Code 登入,請手動執行
gcloud auth application-default login
。 - 使用
minikube start --addons gcp-auth
啟動 minikube。這樣就能將 ADC 掛載到 Pod 中。如需 Google Cloud 的詳細 minikube 驗證指南,請參閱 minikube gcp-auth 說明文件。
其他本機 K8s 叢集
- 如果您透過 IDE 登入 Google Cloud,Cloud Code 會確保您已設定應用程式預設憑證 (ADC)。如果您未使用 Cloud Code 登入,請手動執行
gcloud auth application-default login
。 - 在 Pod 或部署資訊清單中編輯 Pod 規格,將本機
gcloud
目錄掛載至 Kubernetes Pod,以便 Google Cloud 用戶端程式庫找到您的憑證。Kubernetes Pod 設定範例:apiVersion: v1 kind: Pod metadata: name: my-app labels: name: my-app spec: containers: - name: my-app image: gcr.io/google-containers/busybox ports: - containerPort: 8080 volumeMounts: - mountPath: /root/.config/gcloud name: gcloud-volume volumes: - name: gcloud-volume hostPath: path: /path/to/home/.config/gcloud
Cloud Run
如果您透過 IDE 登入 Google Cloud,Cloud Code 會確保您已設定應用程式預設憑證 (ADC)。如果您未使用 Cloud Code 登入,請手動執行 gcloud
auth application-default login
。
遠端開發
Google Kubernetes Engine
視專案範圍而定,您可以選擇在 GKE 上驗證 Google Cloud 服務的方式:
- (僅限開發)
- 使用下列設定建立 GKE 叢集:
- 請確認您使用 GKE 預設的服務帳戶 (即 Compute Engine 預設服務帳戶),並將存取範圍設為「允許所有 Cloud API 的完整存取權」(這兩項設定皆可在「節點資源池」>「安全性」部分存取)。
由於 Compute Engine 服務帳戶會由在節點上部署的所有工作負載共用,因此這個方法會過度提供權限,因此應僅用於開發。 - 確認叢集未啟用 Workload Identity (在「叢集」 >「安全性」部分)。
- 請確認您使用 GKE 預設的服務帳戶 (即 Compute Engine 預設服務帳戶),並將存取範圍設為「允許所有 Cloud API 的完整存取權」(這兩項設定皆可在「節點資源池」>「安全性」部分存取)。
- 將必要角色指派給 Compute Engine 預設服務帳戶:
- 如果您嘗試存取密鑰,請按照這些 Secret Manager 專屬步驟,在服務帳戶中設定必要的角色。
- 如果您使用的是 Compute Engine 預設服務帳戶,可能已套用正確的 IAM 角色。
如需身分與存取權管理 (IAM) 角色類型和可授予身分的預先定義角色清單,請參閱瞭解角色指南。
如需授予角色的步驟,請參閱「授予、變更及撤銷資源存取權」一文。
- 使用下列設定建立 GKE 叢集:
- (正式版建議使用)
- 使用 Workload Identity 設定 GKE 叢集和應用程式,即可在 GKE 上驗證 Google Cloud 服務。這樣一來,您的 Kubernetes 服務帳戶就會與 Google 服務帳戶建立關聯。
- 在 Kubernetes 部署作業 YAML 檔案中設定
.spec.serviceAccountName
欄位,即可將 Kubernetes 部署作業設定為參照 Kubernetes 服務帳戶。
如果您正在使用由 Cloud Code 範本建立的應用程式,這個檔案會位於 kubernetes-manifests 資料夾下。 - 如果您嘗試存取的 Google Cloud 服務需要其他角色,請為您用於開發應用程式的 Google 服務帳戶授予這些角色:
- 如果您嘗試存取密鑰,請按照這些 Secret Manager 專屬步驟,在服務帳戶中設定必要的角色。
如需身分與存取權管理 (IAM) 角色類型和可授予身分的預先定義角色清單,請參閱瞭解角色指南。
如需授予角色的步驟,請參閱「授予、變更及撤銷資源存取權」一文。
Cloud Run
-
如要建立新的專屬服務帳戶來部署 Cloud Run 應用程式,請在「服務帳戶」頁面中,選取儲存密鑰的專案。
- 按一下「建立服務帳戶」。
- 在「Create service account」對話方塊中,輸入服務帳戶的描述性名稱。
- 將「服務帳戶 ID」變更為專屬且可辨識的值,然後按一下「建立」。
- 如果您嘗試存取的 Google Cloud 服務需要其他角色,請授予這些角色,然後按一下「繼續」,再按一下「完成」。
- 如要將 Kubernetes 服務帳戶新增至部署設定,請依序前往「Run」>「Edit Configurations」,然後在「Service Name」欄位中指定服務帳戶。
Cloud Run
視專案範圍而定,您可以選擇在 GKE 上驗證 Google Cloud 服務的方式:
- (僅限開發)
- 使用下列設定建立 GKE 叢集:
- 請確認您使用 GKE 預設的服務帳戶 (即 Compute Engine 預設服務帳戶),並將存取範圍設為「允許所有 Cloud API 的完整存取權」(這兩項設定皆可在「節點資源池」>「安全性」部分存取)。
由於 Compute Engine 服務帳戶會由在節點上部署的所有工作負載共用,因此這個方法會過度提供權限,因此應僅用於開發。
- 確認叢集未啟用 Workload Identity (在「叢集」 >「安全性」部分)。
- 請確認您使用 GKE 預設的服務帳戶 (即 Compute Engine 預設服務帳戶),並將存取範圍設為「允許所有 Cloud API 的完整存取權」(這兩項設定皆可在「節點資源池」>「安全性」部分存取)。
- 將必要角色指派給 Compute Engine 預設服務帳戶:
- 如果您嘗試存取密鑰,請按照這些 Secret Manager 專屬步驟,在服務帳戶中設定必要的角色。
- 如果您使用的是 Compute Engine 預設服務帳戶,可能已套用正確的 IAM 角色。
如需身分與存取權管理 (IAM) 角色類型和可授予身分的預先定義角色清單,請參閱瞭解角色指南。
如需授予角色的步驟,請參閱「授予、變更及撤銷資源存取權」一文。
- 使用下列設定建立 GKE 叢集:
- (正式版建議使用)
- 使用 Workload Identity 設定 GKE 叢集和應用程式,即可在 GKE 上驗證 Google Cloud 服務。這樣一來,您的 Kubernetes 服務帳戶就會與 Google 服務帳戶建立關聯。
- 如要將 Kubernetes 服務帳戶新增至部署設定,請依序前往「Run」>「Edit Configurations」,然後在「Service Name」欄位中指定 Kubernetes 服務帳戶。
- 如果您嘗試存取的 Google Cloud 服務需要額外角色,請為您用於開發應用程式的 Google 服務帳戶授予這些角色:
- 如果您嘗試存取密鑰,請按照這些 Secret Manager 專屬步驟,在服務帳戶中設定必要的角色。
如需身分與存取權管理 (IAM) 角色類型和可授予身分的預先定義角色清單,請參閱瞭解角色指南。
如需授予角色的步驟,請參閱「授予、變更及撤銷資源存取權」一文。
啟用 Secret Manager 權限的遠端開發
如果您使用服務帳戶進行驗證,並在遠端開發應用程式時使用機密資料,除了按照遠端開發操作說明操作之外,還需要完成其他幾個步驟。請按照下列步驟,為 Google 服務帳戶指派存取特定 Secret Manager 密鑰的必要角色:
如要開啟 Secret Manager 工具視窗,請依序前往「Tools」>「Google Cloud Code」>「Secret Manager」。
選取要在程式碼中存取的密鑰。
按一下「權限」分頁,然後點選「編輯」,設定機密金鑰的權限。
Google Cloud 控制台會在您的網路瀏覽器新視窗中開啟,並顯示 Secret Manager 設定頁面。
在 Google Cloud 控制台中,依序點選「Permissions」分頁標籤和「Grant Access」。
在「新增主體」欄位中輸入服務帳戶。
在「Select a role」(請選擇角色) 下拉式選單欄位中,選取「Secret Manager Secret Accessor」(Secret Manager Secret Accessor) 角色。
完成後,按一下「儲存」。
您的服務帳戶具備存取這個機密金鑰的權限。