Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Encrypt-Klasse
Die Encrypt Transformation verschlüsselt Quellspalten mithilfe des AWS Key Management Service-Schlüssels. Die Transformation Encrypt kann bis zu 128 MiB pro Zelle verschlüsseln. Es wird versucht, das Format bei der Entschlüsselung beizubehalten. Um den Datentyp beizubehalten, müssen die Datentyp-Metadaten auf weniger als 1 KB serialisiert werden. Andernfalls müssen Sie den Parameter preserve_data_type auf „false“ festlegen. Die Datentyp-Metadaten werden im Verschlüsselungskontext im Klartext gespeichert.
Beispiel
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
Ausgabe
Die Ausgabe wird eine PySpark DataFrame mit der ursprünglichen `id`-Spalte und einer zusätzlichen Spalte sein, die die verschlüsselten Werte der `phone`-Spalte enthält.
``` +---+------------+-------------------------+ | 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 | +---+------------+-------------------------+ ```
Die Transformation Encrypt verwendet „source_columns“ als „["phone"]“ und „kms_key_arn“ als Wert der Umgebungsvariablen „$ {KMS}“. Die Transformation verschlüsselt die Werte in der Spalte „phone“ mit dem angegebenen KMS-Schlüssel. Das resultierende `df_encrypt` DataFrame enthält die ursprüngliche `id`-Spalte, die ursprüngliche `phone`-Spalte und eine zusätzliche Spalte namens `phone_encrypted`, die die verschlüsselten Werte der `phone`-Spalte enthält.
Methoden
__call__(spark_context, data_frame, source_columns, kms_key_arn, entity_type_filter=None, preserve_data_type=None)
EncryptDie Transformation verschlüsselt AWS Quellspalten mithilfe des Key Management Service-Schlüssels.
-
source_columns– Ein Array vorhandener Spalten. -
kms_key_arn— Der Schlüssel-ARN des AWS Key Management Service-Schlüssels, der zum Verschlüsseln der Quellspalten verwendet werden soll. -
entity_type_filter– Optionales Array von Entitätstypen. Kann verwendet werden, um nur erkannte personenbezogene Daten (Personally Identifyable Information, PII) in einer Freitextspalte zu verschlüsseln. -
preserve_data_type– Optionaler boolescher Wert. Standardwert ist „true“. Wenn der Wert „false“ ist, wird der Datentyp nicht gespeichert.
apply(cls, *args, **kwargs)
Geerbt von GlueTransform apply.
name(cls)
Geerbt von GlueTransform Name.
describeArgs(cls)
Geerbt von GlueTransform describeArgs.
describeReturn(cls)
Geerbt von GlueTransform describeReturn.
describeTransform(cls)
Geerbt von GlueTransform describeTransform.
describeErrors(cls)
Geerbt von GlueTransform describeErrors.
describe(cls)
Geerbt von GlueTransform Beschreiben.