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)[source]

基類: 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 的帳戶鏈,該帳戶將在請求中被模擬。如果設定為字串,則該帳戶必須授予原始帳戶 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須向其直接前一個身份授予 Service Account Token Creator IAM 角色,列表中的第一個帳戶將此角色授予原始帳戶。

get_conn()[source]

檢索與 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=())[source]

使用 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=())[source]

使用 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

此條目有幫助嗎?