기본적으로 Google Cloud는 Google에서 관리하는 암호화 키를 사용하여 데이터를 자동으로 암호화합니다. 데이터를 보호하는 키와 관련된 특정 규정 준수나 규제 요구사항이 있는 경우에 고객 관리 암호화 키(CMEK)를 사용할 수 있습니다.
CMEK에 대한 자세한 내용은 Cloud Key Management Service(KMS) 문서의 CMEK 가이드를 참조하세요.
보호된 데이터
CMEK를 사용하여 모든 대화형 에이전트(Dialogflow CX) 에이전트 저장 데이터를 보호할 수 있습니다.
제한사항
- CMEK가 사용 설정된 에이전트에는 애널리틱스가 사용 중지되어 있습니다.
- 데이터 스토어 에이전트는 키 순환을 지원하지 않습니다. 데이터 스토어가 없는 대화형 에이전트(Dialogflow CX) 에이전트는 새 데이터가 새 키 버전으로 암호화되는 키 순환을 지원합니다. 이전에 암호화된 데이터를 새 키 버전으로 다시 암호화하는 것은 지원되지 않습니다.
- 전역 위치는 지원되지 않습니다.
- 프로젝트 위치당 하나의 키를 사용해야 합니다.
- CMEK가 사용 설정된 에이전트를 복원하려면 Cloud Storage 옵션을 선택해야 합니다.
- CMEK가 통합되지 않은 프로젝트의 기존 리소스는 소급하여 통합된 CMEK일 수 없습니다. 대신 리소스를 내보내고 CMEK용 새 프로젝트에서 복원하는 것이 좋습니다.
키 만들기
키를 만들려면 KMS 서비스를 사용합니다. 자세한 내용은 대칭 키 만들기를 참조하세요. 키를 만들거나 선택할 때는 다음을 구성해야 합니다.
- 에이전트에 사용하는 위치를 선택해야 합니다. 그렇지 않으면 요청이 실패합니다.
- 대화형 에이전트(Dialogflow CX)는 데이터 스토어 에이전트의 키 순환을 지원하지 않습니다. 이 유형의 에이전트를 사용하는 경우 키를 만들 때 순환 기간을 사용 안 함으로 설정해야 합니다.
에이전트에서 키를 사용하도록 구성
에이전트를 만들 때 에이전트 위치와 에이전트가 해당 위치에 Google 관리 키 또는 이미 구성된 고객 관리 키를 사용할지 여부를 지정할 수 있습니다. 이때 선택합니다.
서비스 계정 또는 사용자 계정 구성
Google Cloud CLI를 사용하여 프로젝트의 CCAI CMEK 서비스 계정을 만듭니다. 자세한 내용은 gcloud 서비스 ID 문서를 참조하세요.
gcloud beta services identity create --service=dialogflow.googleapis.com --project=PROJECT_ID
서비스 계정이 생성됩니다. 생성 응답에는 반환되지 않지만 형식은 다음과 같습니다.
service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com
CCAI CMEK 서비스 계정에 Cloud KMS CryptoKey 암호화/복호화 역할을 부여하여 서비스에 키를 사용하여 암호화하고 복호화할 수 있는 권한이 있는지 확인합니다.
gcloud kms keys add-iam-policy-binding KMS_KEY_ID \ --project=PROJECT_ID \ --location=LOCATION_ID \ --keyring=KMS_KEY_RING \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter