Classe de déchiffrement - AWS Glue

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Classe de déchiffrement

La Decrypt transformation déchiffre l'intérieur de Glue. AWS Vos données peuvent également être déchiffrées en dehors de AWS Glue avec le AWS SDK de chiffrement. Si l'ARN de la clé KMS fourni ne correspond pas à celui utilisé pour chiffrer la colonne, l'opération de déchiffrement échoue.

Exemple

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

Sortie

La sortie sera une PySpark DataFrame avec la colonne « id » d'origine et la colonne « phone » déchiffrée :

``` +---+------------+ | id| phone| +---+------------+ | 1| 1234560000| | 2| 1234560001| | 3| 1234560002| | 4| 1234560003| | 5| 1234560004| | 6| 1234560005| | 7| 1234560006| | 8| 1234560007| | 9| 1234560008| | 10| 1234560009| +---+------------+ ```

La Encrypt transformation prend le `source_columns` comme `["phone"]` et le `kms_key_arn` comme valeur de la variable d'environnement `$ {KMS} `. La transformation chiffre les valeurs de la colonne « phone » à l'aide de la clé KMS spécifiée. Le DataFrame `df_encrypt` crypté est ensuite transmis à la Decrypt transformation depuis le module `awsglue.pii`. Il prend le `source_columns` comme `["phone"]` et le `kms_key_arn` comme valeur de la variable d'environnement `$ {KMS} `. La transformation déchiffre les valeurs chiffrées dans la colonne « phone » à l'aide de la même clé KMS. Le fichier `df_decrypt` qui en résulte DataFrame contient la colonne `id` d'origine et la colonne `phone` décryptée.

Méthodes

__call__ (spark_context, data_frame, source_columns, kms_key_arn)

La Decrypt transformation déchiffre l'intérieur de Glue. AWS Vos données peuvent également être déchiffrées en dehors de AWS Glue avec le AWS SDK de chiffrement. Si l'ARN de la clé KMS fourni ne correspond pas à celui utilisé pour chiffrer la colonne, l'opération de déchiffrement échoue.

  • source_columns— Un tableau de colonnes existantes.

  • kms_key_arn— L'ARN de la AWS clé du service de gestion des clés à utiliser pour déchiffrer les colonnes source.

apply(cls, *args, **kwargs)

Hérité de GlueTransform s'appliquent.

name(cls)

Hérité de GlueTransform name.

describeArgs(cls)

Hérité de GlueTransform describeArgs.

describeReturn(cls)

Hérité de GlueTransform describeReturn.

describeTransform(cls)

Hérité de GlueTransform describeTransform.

describeErrors(cls)

Hérité de GlueTransform describeErrors.

describe(cls)

Hérité de GlueTransform describe.