Protege modelos con claves de encriptación administradas por el cliente
BigQuery ML admite claves de encriptación administradas por el cliente (CMEK). Junto con la encriptación predeterminada proporcionada por BigQuery, los clientes ahora pueden comenzar a usar sus propias claves de Cloud Key Management Service para encriptar modelos de aprendizaje automático. También admitimos la encriptación de modelos importados de TensorFlow.
Obtén más información sobre la protección de datos con las claves de Cloud KMS en BigQuery.
Crea un modelo encriptado con una clave de Cloud KMS
Para crear un modelo encriptado, usa la declaración CREATE MODEL
y especifica KMS_KEY_NAME
en las opciones de entrenamiento, entre otras.
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 misma sintaxis también se aplica a la importación del modelo de 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
Limitaciones
Las claves de encriptación administradas por el cliente tienen las siguientes restricciones cuando se encriptan modelos de aprendizaje automático:
Las claves CMEK de la región
Global
no son compatibles cuando se crean modelos de tipo DNN, de algoritmo amplitud y profundidad, de codificación automática o de árbol mejorado.Las claves CMEK de la región
Global
y las claves CMEK multirregionales, por ejemplo,eu
ous
, no son compatibles cuando se crean modelos de AutoML Tables.
Determina si Cloud KMS protege un modelo
Cuando la clave de Cloud KMS protege un modelo, esta se puede mostrar con el comando bq show
. La clave utilizada para la encriptación se puede encontrar en kmsKeyName
.
bq show -m my_dataset.my_model
También puedes usar la consola de Google Cloud a fin de averiguar la clave de Cloud KMS para un modelo encriptado. Obtén más información sobre cómo mostrar la clave de Cloud KMS en BigQuery.
Cambia la clave de Cloud KMS para un modelo encriptado
Usa el comando bq update
con la marca --destination_kms_key
para cambiar la clave de una tabla protegida por Cloud KMS.
bq update --destination_kms_key \
projects/my_project/locations/my_location/keyRings/my_ring/cryptoKeys/my_key \
-t my_dataset.my_model
Obtén más información sobre cómo cambiar una clave de encriptación en BigQuery.
Clave predeterminada de Cloud KMS para el proyecto y conjunto de datos
Los usuarios pueden configurar claves predeterminadas de Cloud KMS a nivel de proyecto o a nivel de conjunto de datos en BigQuery. En BigQuery ML, estas claves predeterminadas también se admiten cuando se crean modelos. Cuando un proyecto tiene una clave de Cloud KMS predeterminada, el modelo creado dentro de este proyecto se encripta automáticamente con la clave predeterminada. El usuario también puede especificar sus propias claves en las opciones de entrenamiento para encriptar el modelo. Lo mismo se aplica al conjunto de datos que tiene una clave predeterminada.
Obtén más información sobre cómo establecer una clave predeterminada del conjunto de datos en BigQuery.
Otras funciones de BigQuery ML
Todas las demás funciones de BigQuery, incluidas las funciones de evaluación (ML.EVALUATE
, ML.ROC_CURVE
, ML.CONFUSION_MATRIX
), funciones de predicción (ML.PREDICT
), funciones de inspección de modelos y atributos (ML.TRAINING_INFO
, ML.FEATURE_INFO
, ML.WEIGHTS
, ML.CENTROIDS
), se pueden usar con un modelo encriptado sin la necesidad de especificar su clave de encriptación.