解密类 - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

解密类

Decrypt 转换会在 Amazon Glue 内部解密。您也可以使用 Amazon Encryption SDK 在 Amazon Glue 之外解密数据。如果提供的 KMS 密钥 ARN 与用于加密列的密钥不匹配,则解密操作将失败。

示例

from pyspark.context import SparkContext from pyspark.sql import SparkSession from awsgluedi.transforms import * kms = "${KMS}" sc = SparkContext() spark = SparkSession(sc) input_df = spark.createDataFrame( [ (1, "1234560000"), (2, "1234560001"), (3, "1234560002"), (4, "1234560003"), (5, "1234560004"), (6, "1234560005"), (7, "1234560006"), (8, "1234560007"), (9, "1234560008"), (10, "1234560009"), ], ["id", "phone"], ) try: df_encrypt = pii.Encrypt.apply( data_frame=input_df, spark_context=sc, source_columns=["phone"], kms_key_arn=kms ) df_decrypt = pii.Decrypt.apply( data_frame=df_encrypt, spark_context=sc, source_columns=["phone"], kms_key_arn=kms ) df_decrypt.show() except: print("Unexpected Error happened ") raise

输出

输出是 PySpark DataFrame,其中包含原始的“id”列和经解密的“phone”列:

``` +---+------------+ | id| phone| +---+------------+ | 1| 1234560000| | 2| 1234560001| | 3| 1234560002| | 4| 1234560003| | 5| 1234560004| | 6| 1234560005| | 7| 1234560006| | 8| 1234560007| | 9| 1234560008| | 10| 1234560009| +---+------------+ ```

Encrypt 转换会将“source_columns”设为“["phone"]”,将“kms_key_arn”设为“${KMS}”环境变量的值。该转换使用指定的 KMS 密钥对“phone”列中的值进行加密。然后,经加密的 DataFrame“df_encrypt”从“awsglue.pii”模块传递给 Decrypt 转换。它会将“source_columns”设为“["phone"]”,将“kms_key_arn”设为“${KMS}”环境变量的值。该转换使用相同的 KMS 密钥解密“phone”列中的加密值。生成的“df_decrypt”DataFrame 包含原始的“id”列和经解密的“phone”列。

方法

__call__(spark_context, data_frame, source_columns, kms_key_arn)

Decrypt 转换会在 Amazon Glue 内部解密。您也可以使用 Amazon Encryption SDK 在 Amazon Glue 之外解密数据。如果提供的 KMS 密钥 ARN 与用于加密列的密钥不匹配,则解密操作将失败。

  • source_columns – 现有列的数组。

  • kms_key_arn – 用于解密源列的 Amazon Key Management Service 密钥的密钥 ARN。

apply(cls, *args, **kwargs)

继承自 GlueTransform apply

name(cls)

继承自 GlueTransform name

describeArgs(cls)

继承自 GlueTransform describeArgs

describeReturn(cls)

继承自 GlueTransform describeReturn

describeTransform(cls)

继承自 GlueTransform describeTransform

describeErrors(cls)

继承自 GlueTransform describeErrors

describe(cls)

继承自 GlueTransform describe