고객 관리 암호화 키로 모델 보호

BigQuery ML은 고객 관리 암호화 키(CMEK)를 지원합니다. BigQuery에서 제공되는 기본 암호화 이외에 자체 Cloud Key Management Service 키를 사용하여 머신러닝 모델을 암호화할 수 있습니다. 또한 가져온 TensorFlow 모델도 암호화할 수 있습니다.

BigQuery에서 Cloud KMS 키로 데이터를 보호하는 방법을 자세히 알아보세요.

Cloud KMS 키로 암호화된 모델 만들기

암호화된 모델을 만들려면 CREATE MODEL 문을 사용하고 특히 학습 옵션에서 KMS_KEY_NAME을 지정합니다.

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

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

제한사항

고객 관리 암호화 키에는 머신러닝 모델을 암호화할 때 다음과 같은 제한사항이 있습니다.

모델이 Cloud KMS로 보호되는지 확인

모델이 Cloud KMS 키로 보호되는 경우 bq show 명령어를 사용하여 키를 표시할 수 있습니다. kmsKeyName에서 암호화에 사용되는 키를 확인할 수 있습니다.

bq show -m my_dataset.my_model

Google Cloud 콘솔을 사용하여 암호화된 모델의 Cloud KMS 키를 찾을 수도 있습니다. BigQuery에서 Cloud KMS 키를 표시하는 방법을 자세히 알아보세요.

암호화된 모델의 Cloud KMS 키 변경

bq update 명령어를 --destination_kms_key 플래그와 함께 사용하면 Cloud KMS로 보호되는 모델의 키를 변경할 수 있습니다.

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

BigQuery에서 암호화 키를 변경하는 방법을 자세히 알아보세요.

프로젝트 및 데이터 세트의 기본 Cloud KMS 키

BigQuery에서 프로젝트 수준 또는 데이터 세트 수준의 기본 Cloud KMS 키를 설정할 수 있습니다. BigQuery ML에서 모델을 만들 때에도 이러한 기본 키가 지원됩니다. 프로젝트에 기본 Cloud KMS 키가 있으면 이 프로젝트에서 생성된 모델은 기본 키로 자동 암호화됩니다. 학습 옵션에서 자체 키를 지정하여 모델을 암호화할 수도 있습니다. 이는 기본 키가 있는 데이터 세트에도 동일하게 적용됩니다.

BigQuery에서 데이터 세트 기본 키를 설정하는 방법을 자세히 알아보세요.

다른 BigQuery ML 함수

암호화 키를 지정하지 않고도 평가 함수(ML.EVALUATE, ML.ROC_CURVE, ML.CONFUSION_MATRIX), 예측 함수(ML.PREDICT), 모델 및 특성 검사 함수(ML.TRAINING_INFO, ML.FEATURE_INFO, ML.WEIGHTS, ML.CENTROIDS)를 포함한 다른 모든 BigQuery 함수를 암호화된 모델에 사용할 수 있습니다.