airflow.providers.google.cloud.hooks.kms

此模組包含 Google Cloud KMS hook。

模組內容

類別

CloudKMSHook

Google Cloud Key Management Service 的 Hook。

class airflow.providers.google.cloud.hooks.kms.CloudKMSHook(gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[原始碼]

繼承自: airflow.providers.google.common.hooks.base_google.GoogleBaseHook

Google Cloud Key Management Service 的 Hook。

參數
  • gcp_conn_id (str) – 擷取連線資訊時使用的連線 ID。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 選擇性服務帳戶,用於模擬短期憑證,或用於取得清單中最後一個帳戶的 access_token 的鏈結帳戶清單,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則清單中的身分必須將「服務帳戶權杖建立者」IAM 角色授予緊鄰的前一個身分,清單中的第一個帳戶將此角色授予原始帳戶。

get_conn()[原始碼]

擷取與 Cloud Key Management Service 的連線。

回傳

Cloud Key Management Service 物件

回傳類型

google.cloud.kms_v1.KeyManagementServiceClient

encrypt(key_name, plaintext, authenticated_data=None, retry=DEFAULT, timeout=None, metadata=())[原始碼]

使用 Google Cloud KMS 加密純文字訊息。

參數
  • key_name (str) – 用於加密的金鑰(或金鑰版本)的資源名稱。格式為 projects/*/locations/*/keyRings/*/cryptoKeys/**

  • plaintext (bytes) – 要加密的訊息。

  • authenticated_data (bytes | None) – 選擇性附加驗證資料,也必須提供該資料才能解密訊息。

  • retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – 用於重試請求的重試物件。如果未指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的秒數。請注意,如果指定了重試,則逾時適用於每次個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

回傳

原始訊息的 Base64 編碼密文。

回傳類型

str

decrypt(key_name, ciphertext, authenticated_data=None, retry=DEFAULT, timeout=None, metadata=())[原始碼]

使用 Google Cloud KMS 解密密文訊息。

參數
  • key_name (str) – 用於解密的金鑰資源名稱。格式為 projects/*/locations/*/keyRings/*/cryptoKeys/**

  • ciphertext (str) – 要解密的訊息。

  • authenticated_data (bytes | None) – 加密訊息時提供的任何其他驗證資料。

  • retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – 用於重試請求的重試物件。如果未指定 None,則不會重試請求。

  • timeout (float | None) – 等待請求完成的秒數。請注意,如果指定了重試,則逾時適用於每次個別嘗試。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供給方法的其他中繼資料。

回傳

原始訊息。

回傳類型

bytes

此條目是否有幫助?