This topic provides a list of Google Cloud services that offer integrations with Cloud KMS. These services generally fall under one of the following categories:
A Customer-managed encryption key (CMEK) integration allows you to encrypt that service's data at rest using a Cloud KMS key that you own and manage. Data protected with a CMEK key cannot be decrypted without access to that key.
A CMEK-compliant service either does not store data, or only stores data for a short period of time, such as during batch processing. Such data is encrypted using an ephemeral key that only exists in memory and is never written to disk. When the data is no longer needed, the ephemeral key is flushed from memory, and the data can't ever be accessed again. The output of a CMEK-compliant service might be stored in a service that is integrated with CMEK, such as Cloud Storage.
Your applications can use Cloud KMS in other ways. For example, you can directly encrypt application data before transmitting or storing it.
To learn more about how data in Google Cloud is protected at rest and how customer-managed encryption keys (CMEK) work, see Customer-managed encryption keys (CMEK).
The following table lists services that integrate with Cloud KMS for software and hardware (HSM) keys. For products that integrate with Cloud KMS when using external Cloud EKM keys, see Services that support CMEK with Cloud EKM.
|Service||Protected with CMEK||Topic|
|AI Platform Training||Data on VM disks||Using customer-managed encryption keys|
|Vertex AI||Data associated with resources||Using customer-managed encryption keys|
|Artifact Registry||Data in repositories||Enabling customer-managed encryption keys|
|BigQuery||Data in BigQuery||Protecting data with Cloud KMS keys|
|Cloud Bigtable||Data at rest||Customer-managed encryption keys (CMEK)|
|Cloud Composer||Environment data||Using customer-managed encryption keys|
|Cloud Functions||Data in Cloud Functions||Using customer-managed encryption keys|
|Cloud Data Fusion||Environment data||Using customer-managed encryption keys|
|Cloud Run||Container image||Using customer-managed encryption keys with Cloud Run|
|Compute Engine||Data on VM disks||Protecting resources with Cloud KMS keys|
|Google Kubernetes Engine||Data on VM disks||Using customer-managed encryption keys (CMEK)|
|Google Kubernetes Engine||Application-layer Secrets||Application-layer Secrets encryption|
|Database Migration Service||Data written to databases||Using customer-managed encryption keys (CMEK)|
|Dataflow||Pipeline state data||Using customer-managed encryption keys|
|Dataproc||Data on VM disks||Customer-managed encryption keys|
|Dataproc Metastore||Data at rest||Using customer-managed encryption keys|
|Datastream||Data in transit||Using customer-managed encryption keys (CMEK)|
|Dialogflow CX||Data at rest||Customer-managed encryption keys (CMEK)|
|Google Distributed Cloud Edge||Data on Edge nodes||Local storage security|
|Document AI||Data at rest and data in use||Customer-managed encryption keys (CMEK)|
|Eventarc||Data at rest||Use customer-managed encryption keys (CMEK)|
|Filestore||Data at rest||Encrypt data with customer-managed encryption keys|
|Cloud Logging||Data in the Log Router||Manage the keys that protect Log Router data|
|Cloud Logging||Data in Logging storage||Manage the keys that protect Logging storage data|
|Memorystore for Redis||Data at rest||Customer-managed encryption keys (CMEK)|
|Pub/Sub||Data associated with topics||Configuring message encryption|
|Cloud Spanner||Data at rest||Customer-managed encryption keys (CMEK)|
|Cloud SQL||Data written to databases||Using customer-managed encryption keys|
|Cloud Storage||Data in storage buckets||Using customer-managed encryption keys|
|Secret Manager||Secret payloads||Enabling Customer-Managed Encryption Keys (CMEK)|
|Speaker ID (Restricted GA)||Data at rest||Using customer-managed encryption keys|
|Vertex AI Workbench managed notebooks||User data at rest||Customer-managed encryption keys|
|Vertex AI Workbench user-managed notebooks||Data on VM disks||Customer-managed encryption keys|
The following table lists services that do not use customer-managed encryption keys (CMEKs) because they do not store data long term. For more information on why these services are considered CMEK compliant, see CMEK compliance.
|Cloud Build||CMEK compliance in Cloud Build|
|Container Registry||Using a storage bucket protected with CMEK|
|Cloud Vision||CMEK compliance in Vision API|
Other integrations with Cloud KMS
These topics discuss other ways to use Cloud KMS with other Google Cloud services.
|Any service||Encrypt application data before transmitting or storing it|
|Cloud Build||Encrypt resources before adding them to a build|