驗證 Dataform

本文說明如何以程式輔助方式驗證 Dataform。您如何驗證 Dataform 取決於您用來存取 API 的介面,以及程式碼執行的環境。

如要進一步瞭解 Google Cloud 驗證,請參閱「驗證方法」。

透過 API 存取

Dataform 支援程式輔助存取機制。您可以透過下列方式存取 API:

用戶端程式庫

Dataform 用戶端程式庫提供高階語言支援,可透過程式輔助方式驗證 Dataform。為了驗證對 Google Cloud API 的呼叫,用戶端程式庫支援應用程式預設憑證 (ADC);這些程式庫會在一系列定義的位置尋找憑證,然後使用這些憑證驗證對 API 的要求。有了 ADC,您就能在各種環境 (例如本機開發或正式版) 中為應用程式提供憑證,而無須修改應用程式程式碼。

REST

您可以使用 gcloud CLI 憑證或應用程式預設憑證,向 Dataform API 驗證。如要進一步瞭解如何驗證 REST 要求,請參閱「驗證 REST 使用權限」。如要瞭解憑證類型,請參閱「gcloud CLI 憑證和 ADC 憑證」。

設定 Dataform 的驗證機制

設定驗證方法的方式取決於程式碼執行的環境。

以下是設定驗證程序最常用的選項。如要進一步瞭解驗證的選項和相關資訊,請參閱「驗證方法」。

本機開發環境

您可以透過下列方式設定本機開發環境的憑證:

用戶端程式庫或第三方工具

在本機環境中設定應用程式預設憑證 (ADC)

  1. After installing the Google Cloud CLI, initialize it by running the following command:

    gcloud init

    If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  2. If you're using a local shell, then create local authentication credentials for your user account:

    gcloud auth application-default login

    You don't need to do this if you're using Cloud Shell.

    If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

    系統隨即會顯示登入畫面。登入後,憑證會儲存在 ADC 使用的本機憑證檔案中。

如要進一步瞭解如何在本機環境中使用 ADC,請參閱「為本機開發環境設定 ADC」。

透過指令列發出 REST 要求

透過指令列提出 REST 要求時,您可以使用 gcloud CLI 憑證,方法是將 gcloud auth print-access-token 納入傳送要求的指令。

以下範例會列出指定專案的服務帳戶。您可以對任何 REST 要求使用相同的模式。

使用任何要求資料之前,請先替換以下項目:

  • PROJECT_ID:您的 Google Cloud 專案 ID。

如要傳送要求,請展開以下其中一個選項:

 

如要進一步瞭解如何使用 REST 和 gRPC 進行驗證,請參閱「使用 REST 進行驗證」。如要瞭解本機 ADC 憑證和 gcloud CLI 憑證的差異,請參閱「gcloud CLI 驗證設定和 ADC 設定」。

服務帳戶模擬

在多數情況下,您可以使用使用者憑證,透過本機開發環境進行驗證。如果無法執行這項操作,或是您需要測試指派給服務帳戶的權限,可以使用服務帳戶冒用功能。您必須具備 iam.serviceAccounts.getAccessToken 權限,該權限包含在 服務帳戶權杖建立者 (roles/iam.serviceAccountTokenCreator) IAM 角色中。

您可以使用 gcloud config set 指令,設定 gcloud CLI 使用服務帳戶冒用功能:

gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL

針對特定語言,您可以使用服務帳戶冒用功能,建立用戶端程式庫可用的本機 ADC 檔案。這種做法僅適用於 Go、Java、Node.js 和 Python 用戶端程式庫,其他語言不支援。如要設定具備服務帳戶冒用功能的本機 ADC 檔案,請使用 --impersonate-service-account 標記搭配 gcloud auth application-default login 指令

gcloud auth application-default login --impersonate-service-account=SERVICE_ACCT_EMAIL

如要進一步瞭解服務帳戶模擬功能,請參閱「使用服務帳戶模擬功能」。

資料表單的存取權控管

完成 Dataform 驗證後,您必須取得授權,才能存取 Google Cloud 資源。Dataform 會使用 Identity and Access Management (IAM) 進行授權。

如要進一步瞭解 Dataform 的角色,請參閱「使用 IAM 控管存取權」。如要進一步瞭解身分與存取權管理和授權,請參閱 身分與存取權管理總覽

後續步驟