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

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

加密类

Encrypt 转换会使用 Amazon Key Management Service 密钥对源列进行加密。Encrypt 转换每个单元格最多可以加密 128 MiB。它将在解密时尝试保留格式。要保留数据类型,数据类型元数据必须序列化为小于 1 KB。否则,您必须将 preserve_data_type 参数设置为 false。数据类型元数据将以纯文本形式存储在加密环境中。

示例

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 ) except: print("Unexpected Error happened ") raise

输出

输出是 PySpark DataFrame,其中包含原始“id”列,以及一个包含“phone”列加密值的附加列。

``` +---+------------+-------------------------+ | id| phone | phone_encrypted | +---+------------+-------------------------+ | 1| 1234560000| EncryptedData1234...abc | | 2| 1234560001| EncryptedData5678...def | | 3| 1234560002| EncryptedData9012...ghi | | 4| 1234560003| EncryptedData3456...jkl | | 5| 1234560004| EncryptedData7890...mno | | 6| 1234560005| EncryptedData1234...pqr | | 7| 1234560006| EncryptedData5678...stu | | 8| 1234560007| EncryptedData9012...vwx | | 9| 1234560008| EncryptedData3456...yz0 | | 10| 1234560009| EncryptedData7890...123 | +---+------------+-------------------------+ ```

Encrypt 转换会将“source_columns”设为“["phone"]”,将“kms_key_arn”设为“${KMS}”环境变量的值。该转换使用指定的 KMS 密钥对“phone”列中的值进行加密。生成的“df_encrypt”DataFrame 包含原始“id”列、原始的“phone”列以及一个名为“phone_encrypted”的附加列,其中包含“phone”列加密值。

方法

__call__(spark_context, data_frame, source_columns, kms_key_arn, entity_type_filter=None, preserve_data_type=None)

Encrypt 转换会使用 Amazon Key Management Service 密钥对源列进行加密。

  • source_columns – 现有列的数组。

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

  • entity_type_filter – 可选的实体类型数组。可仅用于加密自由文本列中检测到的 PII。

  • preserve_data_type – 可选布尔值。默认值为 true。如果为 false,则不会存储数据类型。

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