CryptographicHash kelas - AWS Glue

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

CryptographicHash kelas

CryptographicHashTransformasi menerapkan algoritma untuk nilai hash di kolom.

Contoh

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

Outputnya akan menjadi:

``` +---+------------+-------------------+-------------------+ | 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... | +---+------------+-------------------+-------------------+ ```

Transformasi menghitung hash kriptografi dari nilai-nilai dalam kolom `id` dan `phone` menggunakan algoritma dan kunci rahasia yang ditentukan, dan mengkodekan hash dalam format Base64. Hasil `df_output` DataFrame berisi semua kolom dari `input_df` asli, ditambah kolom `id_hashed` dan `phone_hashed` DataFrame tambahan dengan hash yang dihitung.

Metode

__call__ (spark_context, data_frame, source_columns, secret_id, algoritma = None, secret_version=None, create_secret_if_missing=false, output_format=None, entity_type_filter=None)

CryptographicHashTransformasi menerapkan algoritma untuk nilai hash di kolom.

  • source_columns— Array kolom yang ada.

  • secret_id— ARN dari kunci rahasia Secrets Manager. Kunci yang digunakan dalam algoritma awalan kode otentikasi pesan berbasis hash (HMAC) untuk hash kolom sumber.

  • secret_version – Opsional. Default ke versi rahasia terbaru.

  • entity_type_filter— Array opsional tipe entitas. Dapat digunakan untuk mengenkripsi hanya PII yang terdeteksi di kolom teks bebas.

  • create_secret_if_missing— Boolean opsional. Jika benar akan mencoba untuk membuat rahasia atas nama penelepon.

  • algorithm— Algoritma yang digunakan untuk hash data Anda. Nilai enum yang valid: MD5, SHA1, SHA256, SHA512, HMAC_MD5, HMAC_SHA1, HMAC_SHA256, HMAC_SHA512.

apply(cls, *args, **kwargs)

Warisan dari GlueTransform apply.

name(cls)

Warisan dari GlueTransform nama.

describeArgs(cls)

Warisan dari GlueTransform describeArgs.

describeReturn(cls)

Warisan dari GlueTransform describeReturn.

describeTransform(cls)

Warisan dari GlueTransform describeTransform.

describeErrors(cls)

Warisan dari GlueTransform describeErrors.

describe(cls)

Warisan dari GlueTransform describe.