Protéger des modèles à l'aide de clés de chiffrement gérées par le client

BigQuery ML accepte les clés de chiffrement gérées par le client (CMEK). En plus du chiffrement par défaut fourni par BigQuery, les clients peuvent désormais utiliser leurs propres clés Cloud Key Management Service pour chiffrer les modèles de machine learning. Nous acceptons également le chiffrement des modèles TensorFlow importés.

Consultez la page Protéger des données avec des clés Cloud KMS dans BigQuery pour plus d'informations.

Créer un modèle chiffré à l'aide d'une clé Cloud KMS

Pour créer un modèle chiffré, utilisez l'instruction CREATE MODEL et spécifiez KMS_KEY_NAME dans les options d'entraînement, entre autres.

CREATE MODEL my_dataset.my_model
OPTIONS(
  model_type='linear_reg',
  input_label_cols=['your_label'],
  kms_key_name='projects/my_project/locations/my_location/keyRings/my_ring/cryptoKeys/my_key')
AS SELECT * FROM my_dataset.my_data

La même syntaxe s'applique également à l'importation de modèles Tensorflow.

CREATE MODEL my_dataset.my_model
OPTIONS(
  model_type='tensorflow',
  path='gs://bucket/path/to/saved_model/*',
  kms_key_name='projects/my_project/locations/my_location/keyRings/my_ring/cryptoKeys/my_key')
AS SELECT * FROM my_dataset.my_data

Limites

Les clés de chiffrement gérées par le client sont soumises aux restrictions suivantes lors du chiffrement des modèles de machine learning :

Vérifier si un modèle est protégé par Cloud KMS

Lorsqu'un modèle est protégé par une clé Cloud KMS, la clé peut être affichée à l'aide de la commande bq show. La clé utilisée pour le chiffrement se trouve sous kmsKeyName.

bq show -m my_dataset.my_model

Vous pouvez également utiliser la console Google Cloud pour déterminer la clé Cloud KMS d'un modèle chiffré. Consultez la page Comment afficher la clé Cloud KMS dans BigQuery pour en savoir plus.

Modifier la clé Cloud KMS d'un modèle chiffré

Utilisez la commande bq update avec l'option --destination_kms_key pour modifier la clé d'un modèle protégé par Cloud KMS.

bq update --destination_kms_key \
projects/my_project/locations/my_location/keyRings/my_ring/cryptoKeys/my_key \
-t my_dataset.my_model

Découvrez comment modifier une clé de chiffrement dans BigQuery.

Clé Cloud KMS par défaut du projet et de l'ensemble de données

Dans BigQuery, les utilisateurs peuvent configurer des clés Cloud KMS par défaut au niveau du projet et/ou au niveau de l'ensemble de données. Dans BigQuery ML, ces clés par défaut sont également acceptées lors de la création de modèles. Lorsqu'un projet dispose d'une clé Cloud KMS par défaut, le modèle créé dans ce projet est automatiquement chiffré avec la clé par défaut. L'utilisateur peut également spécifier ses propres clés de chiffrement de modèle dans les options d'entraînement. Il en va de même pour l'ensemble de données associé à une clé par défaut.

Reportez-vous à la page Configurer une clé par défaut d'ensemble de données dans BigQuery pour en savoir plus.

Autres fonctions de BigQuery ML

Toutes les autres fonctions de BigQuery ML, y compris les fonctions d'évaluation (ML.EVALUATE, ML.ROC_CURVE, ML.CONFUSION_MATRIX), de prédiction (ML.PREDICT), d'inspection des modèles et des caractéristiques (ML.TRAINING_INFO, ML.FEATURE_INFO, ML.WEIGHTS, ML.CENTROIDS), peuvent être utilisées avec un modèle chiffré sans qu'il ne soit nécessaire d'indiquer sa clé de chiffrement.