airflow.providers.google.cloud.hooks.kms¶
此模組包含一個 Google Cloud KMS hook。
類¶
用於 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 編碼密文。
- 返回型別:
- 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]]) – 提供給方法的附加元資料。
- 返回:
原始訊息。
- 返回型別: