0 / 0
Retourner à la version anglaise de la documentation
Gestion des clés par l'application
Dernière mise à jour : 07 oct. 2024
Gestion des clés par l'application

Cette rubrique décrit comment faire gérer les clés de chiffrement de colonnes par l'application. Elle explique comment fournir les clés principales et comment écrire et lire des données chiffrées à l'aide de ces clés.

Fourniture de clés principales

Pour fournir des clés principales :

  1. Passez les clés principales explicites au format suivant :

    parameter name: "encryption.key.list"
    parameter value: "<master key ID>:<master key (base64)> , <master key ID>:<master key (base64)>.."
    

    Par exemple :

    sc.hadoopConfiguration.set("encryption.key.list" , "k1:iKwfmI5rDf7HwVBcqeNE6w== , k2:LjxH/aXxMduX6IQcwQgOlw== , k3:rnZHCxhUHr79Y6zvQnxSEQ==")
    

    La longueur des clés principales avant leur encodage en base64 peut être de 16, 24 ou 32 octets (128, 192 ou 256 bits).

Ecriture de données chiffrées

Pour écrire des données chiffrées :

  1. Spécifiez quelles colonnes chiffrer et quelles clés principales utiliser :

    parameter name:  "encryption.column.keys"
    parameter value: "<master key ID>:<column>,<column>;<master key ID>:<column> .."
    
  2. Spécifiez la clé du pied de page :

    parameter name:  "encryption.footer.key"
    parameter value:  "<master key ID>"
    

    Par exemple :

    dataFrame.write
    .option("encryption.footer.key" , "k1")
    .option("encryption.column.keys" , "k2:SSN,Address;k3:CreditCard")
    .parquet("<path to encrypted files>")
    
    Remarque: ` "" ` doit contenir la chaîne ` .encrypted ` dans l'URL, par exemple `/path/to/my_table.parquet.encrypted`. Si le paramètre ` "encryption.column.keys" ` ou le paramètre ` "encryption.footer.key" ` n'est pas défini, une exception est émise.

Lecture de données chiffrées

Les métadonnées requises sont stockées dans les fichiers Parquet chiffrés.

Pour lire les données chiffrées :

  1. Fournissez les clés de chiffrement :

    sc.hadoopConfiguration.set("encryption.key.list" , "k1:iKwfmI5rDf7HwVBcqeNE6w== , k2:LjxH/aXxMduX6IQcwQgOlw== , k3:rnZHCxhUHr79Y6zvQnxSEQ==")
    
  2. Appelez les commandes de lecture Parquet standard, telles que :

    val dataFrame = spark.read.parquet("<path to encrypted files>")
    
    Remarque: ` "" ` doit contenir la chaîne ` .encrypted ` dans l'URL, par exemple `/path/to/my_table.parquet.encrypted`.

Rubrique parent : Chiffrement du Parquet

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus