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 Transformation Encrypt 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
Output
Die Ausgabe wird ein PySpark-Datenrahmen mit der ursprünglichen Spalte „id“ und einer zusätzlichen Spalte sein, die die verschlüsselten Werte der Spalte „phone“ 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. Der resultierende Datenrahmen „df_encrypt“ enthält die ursprüngliche Spalte „id“, die ursprüngliche Spalte „phone“ und eine zusätzliche Spalte namens „phone_encrypted“, die die verschlüsselten Werte der Spalte „phone“ enthält.
Methoden
__call__(spark_context, data_frame, source_columns, kms_key_arn, entity_type_filter=None, preserve_data_type=None)
Die Transformation Encrypt verschlüsselt Quellspalten mithilfe des AWS-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.