airflow.providers.google.cloud.hooks.kms

此模块包含 Google Cloud KMS hook。

模块内容

CloudKMSHook

用于 Google Cloud Key Management 服务的 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 服务的 Hook。

参数
  • gcp_conn_id (str) – 获取连接信息时使用的连接 ID。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的可选服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链式列表,该帐户将在请求中被模拟。如果设置为字符串,则该帐户必须授予发起帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的身份必须向直接前一个身份授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户向发起帐户授予此角色。

get_conn()[源码]

检索与 Cloud Key Management 服务的连接。

返回

Cloud Key Management 服务对象

返回类型

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) – 用于重试请求的重试对象。如果未指定,则不会重试请求。

  • 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) – 用于重试请求的重试对象。如果未指定,则不会重试请求。

  • timeout (float | None) – 等待请求完成的秒数。请注意,如果指定了重试,则超时适用于每个单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的其他元数据。

返回

原始消息。

返回类型

bytes

此条目是否有帮助?