Join our Newsletter — 33% off our NHI Course
Home› FAQ› Governance, Ownership & Risk› What should teams do first when a Google…
Governance, Ownership & Risk

What should teams do first when a Google Cloud VM is using the default service account?

← Back to all FAQ
By NHI Mgmt Group Editorial Team Updated September 28, 2026 Domain: Governance, Ownership & Risk

First, replace the default service account with a new workload-specific service account that has only the permissions the VM actually needs. Then revoke editor privileges on the default account and disable automatic IAM grants for default service accounts. That sequence quickly reduces exposure while preserving access required for the workload to function.

Why the default service account is the first thing to fix

A Google Cloud VM using the default service account usually has more access than the workload needs, and that creates avoidable blast radius. The safe starting point is to move the VM onto a workload-specific service account, because access should follow the application’s actual function, not the project’s convenience setting. For cloud workload identity context, see Cloud Workload Identity Guide and Service Account Security Guide.

That change matters because the default account is often shared across VMs, inherited through automation, or left in place after the original build. When a VM keeps that account, any secret, token, or runtime compromise can inherit broader project access than intended. The fix is not just administrative cleanup, it is a control boundary change that narrows what a compromised VM can do.

The practical target is least privilege with a clear owner for the new account. The VM should authenticate to only the Google Cloud services it actually uses, and the account should be easy to identify, review, and retire when the workload changes. For broader lifecycle and accountability context, see NHI Ownership and Accountability Guide and Ultimate Guide to NHIs.

What the replacement sequence should accomplish

The first sequence is: attach a workload-specific service account, then remove editor-level access from the default account, then disable automatic IAM grants for default service accounts going forward. That order preserves runtime continuity while shrinking permissions fast. If the workload still needs cloud APIs after the change, those permissions should be re-added deliberately rather than inherited by default.

Teams should also check whether the VM is using the default account only for authentication, or whether scripts, cron jobs, or deployment tooling are also assuming its broad privileges. If those dependencies exist, they need to be repointed to the new account at the same time. A migration that changes the attached identity but leaves hidden automation behind will look fixed while the old exposure remains.

For Google Cloud workload patterns, the right mental model is that the VM identity is an operational dependency, not a static convenience setting. The point of the change is to make the VM’s access understandable and reviewable, so later access reviews can answer one question: what does this workload still need, and why?

Why this matters for risk reduction in practice

The main risk is excessive privilege. If the default service account retains editor-level access, compromise of one VM can become access to many resources, and the attacker does not need to work hard to pivot. The exposure is especially serious when the VM can reach secrets, storage, deployment systems, or other control planes through inherited project permissions. For threat patterns tied to service accounts and credential abuse, see The 52 NHI Breaches Report and Top 10 NHI Issues.

Default-account misuse also creates drift over time. Teams add permissions to make a workload work, then forget to remove them later, which turns a temporary implementation choice into a durable exposure. Disabling automatic grants stops that pattern from repeating on new VMs, but it does not repair existing over-permissioned workloads, so remediation still has to happen instance by instance.

Risk and Threat Considerations

Default service accounts are attractive to attackers because they often combine persistence, broad access, and weak visibility. If one compromised VM can act with editor privileges, the attacker gains a ready-made path to enumerate resources, access data, and extend the compromise without needing separate privilege escalation steps.

Failure mechanism: The VM keeps a project-wide or otherwise overbroad identity, and that identity remains usable after the workload is fully attached to it, so the compromise surface stays wider than necessary.

Impact: A single workload compromise can translate into lateral movement, data exposure, or infrastructure modification across the project, especially when the default account is reused or left with inherited grants.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

CSA Cloud Controls Matrix, NIST SP 800-53 Rev 5 and CIS Controls v8 set the technical controls, while ISO/IEC 27001:2022 defines the regulatory obligations.

FrameworkControl / ReferenceRelevance
CSA Cloud Controls MatrixIAM — Identity & Access ManagementCloud workload identity and least privilege are central to VM service account control.
Recommendation — Assign each VM a least-privilege workload identity and remove default-account dependence.
NIST SP 800-53 Rev 5AC-6 — Least PrivilegeThe question is about reducing excess permissions on a VM identity.
IA-9 — Identification and Authentication (Service and Device Accounts)A VM using a service account is an authenticated non-user workload identity.
Recommendation — Limit the VM service account to only the permissions required for the workload. Bind the VM to a dedicated service account and remove broad inherited access.
ISO/IEC 27001:2022A.5.15 — Access controlReplacing the default account is an access-control change that narrows authorization.
Recommendation — Review and restrict workload access rights to the minimum required.
CIS Controls v8CIS-6 — Access Control ManagementThe sequence is an access-rights reduction and account hardening action.
Recommendation — Replace broad default access with a dedicated account and revoke excess rights.

Practitioner Guidance

What to verify: Confirm that the replacement service account is workload-specific, that the VM no longer relies on the default account for runtime access, and that the old account has no editor-style privileges left behind. Also verify that any automation invoking Google Cloud APIs has been updated, because hidden dependencies are the most common reason a “fixed” VM still behaves as if it were using the default identity.

What good looks like: The VM can still perform its intended cloud actions, but only through a named account with a small, explainable permission set. New VMs no longer inherit broad access automatically, and reviewers can trace each permission back to an operational need rather than a project default.

Practitioner takeaway: Treat the default service account as a temporary bootstrap mechanism, not an operating identity; the right first move is to swap in a least-privilege workload account before anything else accumulates on top of the default.

Deepen Your Knowledge

Sign up to our weekly newsletter — get 33% off our NHI Foundation Level Course

    NHIMG Editorial Note
    Reviewed and updated by the NHIMG editorial team on September 28, 2026.
    NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org