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.
Klasse verschlüsseln
Die Encrypt
Transformation verschlüsselt Quellspalten mithilfe des AWS Key Management Service-Schlüssels. Die Encrypt
Transformation 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 preserve_data_type
Parameter auf False setzen. Die Metadaten des Datentyps 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 erfolgt in einer Spalte PySpark DataFrame mit der ursprünglichen `id`-Spalte und einer zusätzlichen Spalte, 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 Encrypt
Transformation 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 Spalte `id`, die ursprüngliche Spalte `phone` 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)
Die Encrypt
Transformation verschlüsselt Quellspalten mithilfe des AWS Key Management Service-Schlüssels.
-
source_columns
— Eine Reihe 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 PII in einer Freitextspalte zu verschlüsseln. -
preserve_data_type
— Optionaler boolescher Wert. Standardwert ist „true“. Wenn der Wert falsch 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.