Classe Decrypt
La trasformazione Decrypt esegue la decrittografia all'interno di AWS Glue. I dati possono essere decrittografati anche all'esterno di AWS Glue con l'SDK Encryption AWS. Se l'ARN della chiave KMS fornito non corrisponde a quello utilizzato per crittografare la colonna, l'operazione di decrittografia non riesce.
Esempio
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
Output
L'output sarà un DataFrame PySpark con la colonna `id` originale e la colonna `phone` decrittografata:
``` +---+------------+ | id| phone| +---+------------+ | 1| 1234560000| | 2| 1234560001| | 3| 1234560002| | 4| 1234560003| | 5| 1234560004| | 6| 1234560005| | 7| 1234560006| | 8| 1234560007| | 9| 1234560008| | 10| 1234560009| +---+------------+ ```
La trasformazione Encrypt prende le `source_columns`, come `[“phone”]` e `kms_key_arn`, come valore della variabile di ambiente `${KMS}`. La trasformazione esegue la crittografia dei valori nella colonna `phone` utilizzando la chiave KMS specificata. Il DataFrame crittografato `df_encrypt` viene poi passato alla trasformazione Decrypt dal modulo `awsglue.pii`. Prende le `source_columns`, come `[“phone”]` e `kms_key_arn`, come valore della variabile di ambiente `${KMS}`. La trasformazione esegue la decrittografia dei valori crittografati nella colonna `phone` utilizzando la stessa chiave KMS. Il DataFrame `df_decrypt` risultante contiene la colonna `id` originale e la colonna `phone` decrittografata.
Metodi
__call__(spark_context, data_frame, source_columns, kms_key_arn)
La trasformazione Decrypt esegue la decrittografia all'interno di AWS Glue. I dati possono essere decrittografati anche all'esterno di AWS Glue con l'SDK Encryption AWS. Se l'ARN della chiave KMS fornito non corrisponde a quello utilizzato per crittografare la colonna, l'operazione di decrittografia non riesce.
-
source_columns: una matrice di colonne esistenti. -
kms_key_arn: l'ARN della chiave del Servizio di gestione delle chiavi AWS da utilizzare per eseguire la decrittografia delle colonne di origine.
apply(cls, *args, **kwargs)
Ereditato da GlueTransform apply.
name(cls)
Ereditato da GlueTransform nome.
describeArgs(cls)
Ereditato da GlueTransform describeArgs.
describeReturn(cls)
Ereditato da GlueTransform describeReturn.
describeTransform(cls)
Ereditato da GlueTransform describeTransform.
describeErrors(cls)
Ereditato da GlueTransform describeErrors.
describe(cls)
Ereditato da GlueTransform describe.