Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Classe CryptographicHash
La trasformazione CryptographicHash applica un algoritmo per eseguire l'hash dei valori nella colonna.
Esempio
from pyspark.context import SparkContext from pyspark.sql import SparkSession from awsgluedi.transforms import * secret = "${SECRET}" 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_output = pii.CryptographicHash.apply( data_frame=input_df, spark_context=sc, source_columns=["id", "phone"], secret_id=secret, algorithm="HMAC_SHA256", output_format="BASE64", ) df_output.show() except: print("Unexpected Error happened ") raise
Output
L'output sarà:
``` +---+------------+-------------------+-------------------+ | id| phone | id_hashed | phone_hashed | +---+------------+-------------------+-------------------+ | 1| 1234560000 | QUI1zXTJiXmfIb... | juDBAmiRnnO3g... | | 2| 1234560001 | ZAUWiZ3dVTzCo... | vC8lgUqBVDMNQ... | | 3| 1234560002 | ZP4VvZWkqYifu... | Kl3QAkgswYpzB... | | 4| 1234560003 | 3u8vO3wQ8EQfj... | CPBzK1P8PZZkV... | | 5| 1234560004 | eWkQJk4zAOIzx... | aLf7+mHcXqbLs... | | 6| 1234560005 | xtI9fZCJZCvsa... | dy2DFgdYWmr0p... | | 7| 1234560006 | iW9hew7jnHuOf... | wwfGMCOEv6oOv... | | 8| 1234560007 | H9V1pqvgkFhfS... | g9WKhagIXy9ht... | | 9| 1234560008 | xDhEuHaxAUbU5... | b3uQLKPY+Q5vU... | | 10| 1234560009 | GRN6nFXkxk349... | VJdsKt8VbxBbt... | +---+------------+-------------------+-------------------+ ```
La trasformazione calcola gli hash crittografici dei valori nelle colonne `id` e `phone` utilizzando l'algoritmo e la chiave segreta specificati, poi codifica gli hash nel formato Base64. Il DataFrame `df_output` risultante contiene tutte le colonne del DataFrame `input_df` originale, oltre alle colonne `id_hashed` e `phone_hashed` aggiuntive con gli hash calcolati.
Metodi
__call__(spark_context, data_frame, source_columns, secret_id, algorithm=None, secret_version=None, create_secret_if_missing=False, output_format=None, entity_type_filter=None)
La trasformazione CryptographicHash applica un algoritmo per eseguire l'hash dei valori nella colonna.
-
source_columns: una matrice di colonne esistenti. -
secret_id: l'ARN della chiave segreta di Secrets Manager. La chiave utilizzata nell'algoritmo di prefisso del Codice di autenticazione dei messaggi basato su hash (HMAC) per eseguire l'hash delle colonne di origine. -
secret_version: opzionale. Per impostazione predefinita, utilizza la versione più recente del segreto. -
entity_type_filter: matrice facoltativa dei tipi di entità. Può essere utilizzata per crittografare solo le informazioni di identificazione personale (PII) rilevate nella colonna a testo libero. -
create_secret_if_missing: booleano facoltativo. Se true, cercherà di creare il segreto per conto del chiamante. -
algorithm: l'algoritmo utilizzato per eseguire l'hash dei dati. Valori enum validi: MD5, SHA1, SHA256, SHA512, HMAC_MD5, HMAC_SHA1, HMAC_SHA256, HMAC_SHA512.
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.