Check ID: compute_instance_confidential_computing_enabled
Provider: GCP
Service: compute
Severity: MEDIUM
Categories: encryption
Resource type: compute.googleapis.com/Instance

What this check verifies

Google Compute Engine VMs configured as Confidential VMs encrypt data in use with hardware-based memory protection and per-instance keys. This assessment identifies whether Confidential Computing is enabled on each VM instance.

Risk

Absent Confidential Computing, plaintext data in RAM can be exposed via host introspection, hypervisor compromise, or cold-boot/DMA attacks, undermining confidentiality and enabling in-memory tampering that impacts integrity of computations, models, and secrets.

Recommendation

Enable Confidential VMs for workloads processing sensitive data to protect data-in-use. Apply defense in depth: enforce least privilege on administrative access, use disk encryption with CMEK, and require workload attestation/trusted images. If unsupported, isolate or refactor workloads to compatible options.

Remediation

resource "google_compute_instance" "<example_resource_name>" {
  name         = "<example_resource_name>"
  machine_type = "n2d-standard-2"  # Supported for Confidential VM
  zone         = "<ZONE>"

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-12"
    }
  }

  network_interface {}

  # Critical: Enables Confidential Computing on the VM
  confidential_instance_config {
    enable_confidential_compute = true  # Turns on Confidential VM
  }
}

References

Where this check fires

This check runs on every scheduled scan against your GCP account. Findings appear at Cloud Security → Findings filterable by Check ID = compute_instance_confidential_computing_enabled. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to GCP checks