驗證基本概念

與 Google Cloud API 和服務互動前,您必須證明自己的身分。證明身分的程序稱為「驗證」。

如要向 Google Cloud進行驗證,您必須提供憑證做為身分證明。舉例來說,如要使用某項服務,您可能需要使用密碼和一次性代碼等憑證進行驗證。

Google Cloud 會將通過驗證的使用者稱為「主體」。當您嘗試存取資源 (例如 Google Cloud 專案或儲存空間值區 Google Cloud) 時,系統會檢查主體對所要求資源的存取層級。這個程序稱為「授權」,由 Identity and Access Management (IAM) 系統處理。

這些概念同樣適用於代表您執行自動化工作的程式碼,也就是所謂的「工作負載」。工作負載必須提供憑證來證明身分,並以主體身分進行驗證,之後 Google Cloud 即可判斷工作負載對所要求資源的存取層級。

主體類型

您可以驗證不同類型的主體。您甚至可以在工作的不同階段,或在不同的開發環境中使用不同的主體類型。

主要主體類型和驗證所需的憑證包括:

  • 使用者帳戶:這些是Google 帳戶,供使用者執行互動式工作,例如臨時管理工作、 Google Cloud 服務的非程式輔助設定、測試、實驗和可觀測性。

    您可以使用使用者憑證 (例如密碼和一次性代碼) 驗證使用者帳戶。

  • 服務帳戶:這些是 Google Cloud 的內部帳戶,工作負載可用於存取服務或資源。您通常不會直接以服務帳戶進行驗證,而是將服務帳戶附加至 Compute Engine VM 等資源,或使用服務帳戶模擬

    在大多數情況下,我們建議使用短期服務帳戶憑證驗證服務帳戶。

  • 聯盟身分:這類身分會參照外部身分提供者中的使用者或服務帳戶。 Google Cloud支援兩種同盟身分,名稱相似:

如要進一步瞭解這些和其他支援的主體類型,請參閱 Google Cloud「主體類型」。

設定機構的驗證機制 Google Cloud

為 Google Cloud 機構設定驗證機制時,您可能需要將現有系統和工作流程整合至 Google Cloud:

  • 如果您要使用現有的身分識別提供者,請設定員工身分聯盟

  • 如果工作負載在 Google Cloud 外部執行,且需要存取Google Cloud 資源,您必須設定 Workload Identity 聯盟

此外,建議您採取下列做法,確保環境安全無虞: Google Cloud

驗證人員和工作負載

向 Google Cloud 進行驗證的方式,取決於您使用的 API 和服務,以及與這些 API 和服務互動的方式。

驗證是否為真人

執行手動互動式工作時 (例如處理臨時管理工作、設定資源、變更設定、進行實驗及瀏覽記錄),您會使用使用者帳戶的憑證進行驗證。

控制台

如要在 Google Cloud 控制台中進行互動式工作,請使用使用者憑證登入網頁介面,進行驗證。

前往 Google Cloud 控制台

Google Cloud 控制台工作階段的憑證也適用於 Cloud Shell,您可以在其中存取 gcloud CLI。

gcloud

在本機裝置上安裝 gcloud CLI 後,您可以使用使用者憑證向 Google Cloud 進行驗證,方法是在終端機中執行下列指令:

gcloud auth login

完成驗證後,後續的 gcloud 指令會使用登入的主體提出要求。

如要使用員工身分聯盟憑證、Workload Identity Federation 憑證或服務帳戶金鑰進行驗證,請參閱「使用 gcloud CLI 進行驗證」。

驗證工作負載

無論您是在本機裝置、Google Cloud、地端部署環境或其他雲端中開發及執行程式碼,最彈性且可攜式的工作負載驗證方式,就是透過稱為應用程式預設憑證 (ADC) 的機制提供憑證。

實作 ADC 的程式庫 (例如Google Cloud 用戶端程式庫) 會檢查執行環境中的已知位置,尋找憑證。也就是說,如果您變更程式碼的執行位置,不需要變更程式碼本身,只要變更該環境使用的憑證即可。

舉例來說,在本機開發時,您可以設定環境,讓 ADC 使用您的使用者憑證進行驗證。程式碼準備好用於正式環境後,您可以將其部署至 Compute Engine VM 執行個體,並將環境設為使用短期服務帳戶憑證進行驗證。

在下列情況中,您無法使用 ADC 進行驗證:

  • 驗證 gcloud CLI 時。

  • 使用 API 金鑰時。API 金鑰只能用於特定 API。

如要瞭解如何為特定環境設定 ADC,請參閱「設定應用程式預設憑證」。

後續步驟