airflow.providers.google.cloud.utils.credentials_provider

此模組包含一個提供臨時 Google Cloud 認證的機制。

屬性

log

AIRFLOW_CONN_GOOGLE_CLOUD_DEFAULT

函式

build_gcp_conn([key_file_path, scopes, project_id])

構建一個 URI,該 URI 可用作 AIRFLOW_CONN_{CONN_ID} 並使用提供的值。

provide_gcp_credentials([key_file_path, key_file_dict])

上下文管理器,為應用程式預設憑據 (ADC) 提供 Google Cloud 憑據。

provide_gcp_connection([key_file_path, scopes, project_id])

上下文管理器,提供 AIRFLOW_CONN_GOOGLE_CLOUD_DEFAULT 連線的臨時值。

provide_gcp_conn_and_credentials([key_file_path, ...])

上下文管理器,提供 GPC 連線和憑據。

get_credentials_and_project_id(*args, **kwargs)

返回 Google API 的 Credentials 物件及其關聯的 project_id。

模組內容

airflow.providers.google.cloud.utils.credentials_provider.log[source]
airflow.providers.google.cloud.utils.credentials_provider.AIRFLOW_CONN_GOOGLE_CLOUD_DEFAULT = 'AIRFLOW_CONN_GOOGLE_CLOUD_DEFAULT'[source]
airflow.providers.google.cloud.utils.credentials_provider.build_gcp_conn(key_file_path=None, scopes=None, project_id=None)[source]

構建一個 URI,該 URI 可用作 AIRFLOW_CONN_{CONN_ID} 並使用提供的值。

引數:
  • key_file_path (str | None) – 服務金鑰的檔案路徑。

  • scopes (collections.abc.Sequence[str] | None) – 所需的 OAuth 範圍。

  • project_id (str | None) – 用於連線的 Google Cloud 專案 ID。

返回值:

表示 Airflow 連線的字串。

返回型別:

str

airflow.providers.google.cloud.utils.credentials_provider.provide_gcp_credentials(key_file_path=None, key_file_dict=None)[source]

上下文管理器,為應用程式預設憑據 (ADC) 提供 Google Cloud 憑據。

它可用於為需要 GOOGLE_APPLICATION_CREDENTIALS 環境變數中授權檔案的外部程式(例如 gcloud)提供憑據。

引數:
  • key_file_path (str | None) – 包含 Google Cloud Service Account .json 檔案的路徑。

  • key_file_dict (dict | None) – 包含憑據的字典。

airflow.providers.google.cloud.utils.credentials_provider.provide_gcp_connection(key_file_path=None, scopes=None, project_id=None)[source]

上下文管理器,提供 AIRFLOW_CONN_GOOGLE_CLOUD_DEFAULT 連線的臨時值。

它構建一個新的連線,其中包括提供的服務 json 路徑、所需範圍和專案 ID。

引數:
  • key_file_path (str | None) – 包含 Google Cloud Service Account .json 檔案的路徑。

  • scopes (collections.abc.Sequence | None) – 連線的 OAuth 範圍

  • project_id (str | None) – 連線的 Google Cloud 專案 ID。

airflow.providers.google.cloud.utils.credentials_provider.provide_gcp_conn_and_credentials(key_file_path=None, scopes=None, project_id=None)[source]

上下文管理器,提供 GPC 連線和憑據。

它同時提供

引數:
  • key_file_path (str | None) – 包含 Google Cloud Service Account .json 檔案的路徑。

  • scopes (collections.abc.Sequence | None) – 連線的 OAuth 範圍

  • project_id (str | None) – 連線的 Google Cloud 專案 ID。

airflow.providers.google.cloud.utils.credentials_provider.get_credentials_and_project_id(*args, **kwargs)[source]

返回 Google API 的 Credentials 物件及其關聯的 project_id。