| :mod:`airflow.contrib.hooks.gcp_kms_hook` |
| ========================================= |
| |
| .. py:module:: airflow.contrib.hooks.gcp_kms_hook |
| |
| |
| Module Contents |
| --------------- |
| |
| .. function:: _b64encode(s) |
| Base 64 encodes a bytes object to a string |
| |
| |
| .. function:: _b64decode(s) |
| Base 64 decodes a string to bytes. |
| |
| |
| .. py:class:: GoogleCloudKMSHook(gcp_conn_id='google_cloud_default', delegate_to=None) |
| |
| Bases: :class:`airflow.contrib.hooks.gcp_api_base_hook.GoogleCloudBaseHook` |
| |
| Interact with Google Cloud KMS. This hook uses the Google Cloud Platform |
| connection. |
| |
| |
| .. method:: get_conn(self) |
| |
| Returns a KMS service object. |
| |
| :rtype: googleapiclient.discovery.Resource |
| |
| |
| |
| |
| .. method:: encrypt(self, key_name, plaintext, authenticated_data=None) |
| |
| Encrypts a plaintext message using Google Cloud KMS. |
| |
| :param key_name: The Resource Name for the key (or key version) |
| to be used for encyption. Of the form |
| ``projects/*/locations/*/keyRings/*/cryptoKeys/**`` |
| :type key_name: str |
| :param plaintext: The message to be encrypted. |
| :type plaintext: bytes |
| :param authenticated_data: Optional additional authenticated data that |
| must also be provided to decrypt the message. |
| :type authenticated_data: bytes |
| :return: The base 64 encoded ciphertext of the original message. |
| :rtype: str |
| |
| |
| |
| |
| .. method:: decrypt(self, key_name, ciphertext, authenticated_data=None) |
| |
| Decrypts a ciphertext message using Google Cloud KMS. |
| |
| :param key_name: The Resource Name for the key to be used for decyption. |
| Of the form ``projects/*/locations/*/keyRings/*/cryptoKeys/**`` |
| :type key_name: str |
| :param ciphertext: The message to be decrypted. |
| :type ciphertext: str |
| :param authenticated_data: Any additional authenticated data that was |
| provided when encrypting the message. |
| :type authenticated_data: bytes |
| :return: The original message. |
| :rtype: bytes |
| |
| |
| |
| |