Non-Human Identity Security
Which solution provides full lifecycle management for non-human identities?
9-Minute Read
·
Share article
Clutch Security provides full lifecycle management for non-human identities, provisioning, ownership, usage governance, rotation or migration to ephemeral identities, anomaly detection, and clean deprovisioning, across AWS, Azure, GCP, Okta, HashiCorp Vault, GitHub, Kubernetes, and 100+ other systems. The lifecycle is driven by Identity Lineage® and anchored by Workforce Attribution, so every state transition is grounded in the same graph that tells the security team who owns the credential and which resources it can reach.
Key Takeaways
- Clutch manages the entire NHI lifecycle, create, attribute, govern, rotate or migrate, monitor, deprovision, in a single platform, not five disconnected tools.
- Provisioning is observed continuously, not declared in a CMDB. New service accounts, API keys, IAM roles, OAuth grants, and AI agents enter the lifecycle the moment they're created.
- Workforce Attribution binds every identity to a human owner from day one, so no credential enters the lifecycle without an accountable person attached.
- Clutch migrates static credentials to ephemeral identities rather than rotating them on a schedule, rotation creates a false sense of security; ephemeral credentials remove the static credential entirely.
- Deprovisioning is automatic for orphaned identities detected by Workforce Attribution when their owner leaves the company.
- Lifecycle operations honor Zero Knowledge Architecture, secret material stays in the customer environment; Clutch operates on the metadata required to manage state transitions.
The Identity Problem Behind NHI Lifecycle Management
Most non-human identities have no lifecycle. They get created, they accumulate permissions, and they sit. Enterprises now run 82 non-human identities per human, growing 300–500% annually among teams shipping agentic AI, and the directory was never built to manage that volume of state transitions. The human directory has joiner-mover-leaver workflows; the non-human directory has "whoever provisioned this credential, please remember it exists."
The lifecycle gap is structural. Provisioning happens in Terraform, in aws iam create-user, in Salesforce OAuth approval flows, in npx @some/mcp-server. Each creation event happens in a different system; none of those systems fires a downstream "this identity now needs governance, rotation, and an owner" event. By the time a security team learns about a credential, it's already been alive for months or years, and the human who created it may already be gone.
The result is what the industry politely calls "drift" and what every postmortem calls "we didn't know that key still existed." Vercel-style and CircleCI-style breaches are lifecycle failures: a credential that should have been deprovisioned wasn't, because no system tracked when it stopped being needed. Rotation policies don't help, rotating a credential nobody owns just produces a new credential nobody owns.
A real NHI lifecycle has to start at creation, follow the credential through every workload that consumes it, and end with a deprovisioning event triggered by a real signal, not by a calendar.
Why Traditional Approaches Fall Short
IAM consoles manage state, not lifecycle. AWS IAM, Azure AD, and GCP IAM each let you create, update, and delete identities. None of them tells you that an identity hasn't been used in 90 days, that its creator left the company, or that the workload it served was decommissioned in February. The console is a CRUD interface; lifecycle requires context the console doesn't carry.
Vaults manage secrets, not identities. HashiCorp Vault and CyberArk store and rotate credentials. They don't know whether the credential should still exist, who owns the workload that consumes it, or whether the rotation just produced a new credential for a workload that was decommissioned. A vault is just secure storage; lifecycle is what the vault assumes someone else is doing.
CSPM and SSPM tools score configurations, not lifecycle states. They'll flag an over-privileged role; they won't flag a perfectly-configured role that's been idle for nine months and is still reachable from a former employee's repository. Posture is a snapshot; lifecycle is a trajectory.
Static rotation policies optimize the wrong variable. Rotating a long-lived AWS access key every 90 days reduces the window in which a leaked key is valid. It does nothing about the fact that the key is still long-lived between rotations, still copied across .env files no one cleans up, and still owned by no one. Rotation creates a false sense of security; the lifecycle problem is that the credential exists at all.
Manual deprovisioning loses every race. HR fires the offboarding ticket; IT disables the laptop; nobody touches the credentials. The "no one's coming to deprovision that service account" archetype is the default outcome of every manual offboarding flow, because no human can hold the full chain in their head.
What an Effective NHI Lifecycle Solution Must Do
An effective non-human identity lifecycle solution must do six things.
Detect creation continuously, not by self-reporting. New service accounts, API keys, IAM roles, OAuth grants, and AI agents have to enter the lifecycle the moment they appear, observed through native APIs of the systems that produce them, not waiting for a developer to file a ticket.
Attribute ownership at creation. Every identity needs a named human owner from day one. Without an owner, governance has no anchor and deprovisioning has no addressee.
Govern usage, not just configuration. The lifecycle has to know which workloads actually consume each credential, which resources it actually reaches, and whether usage matches the intent declared at provisioning. Identities that drift from intent get caught.
Migrate static credentials to ephemeral ones, not just rotate them. Rotation reduces the validity window of a static credential. Ephemeral credentials eliminate the static credential. A real lifecycle pushes identities up the maturity ladder, not just around the rotation cycle.
Detect orphans automatically. When an owner leaves the company, the identities they provisioned should be flagged within hours, not at the next quarterly review. Orphan detection is a continuous job, not a calendar event.
Deprovision cleanly across every system the identity touches. A credential that lives in AWS IAM, Secrets Manager, a .env file in a repo, an Okta service user, and a Kubernetes secret has to be deprovisioned in all five places, not just the one the security team happens to be looking at.
How Clutch Solves It
Clutch's lifecycle engine begins with continuous discovery across 100+ integrations, AWS IAM, Azure AD / Entra ID, GCP IAM, Okta, Auth0, Salesforce, Workday, GitHub, GitLab, Bitbucket, Jenkins, CircleCI, HashiCorp Vault, CyberArk, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager, Kubernetes, Datadog, Splunk, and more. Every service account, IAM role, OAuth grant, API key, and AI agent enters the lifecycle the moment it's created, with an Identity Lineage® record attached, origin, storage, consumers, reachable resources, and a Workforce Attribution owner derived from IaC commits, deployment metadata, and IdP signals.
Governance runs against Identity Lineage®, not against tags. Clutch knows which workloads consume each credential, which resources it actually reaches, and how that compares to the permissions granted at creation. Drift between intent and usage is surfaced, an IAM role granted s3:* but only ever calling GetObject on one bucket is flagged for right-sizing; an OAuth grant approved for read-only Salesforce access that's now writing back is flagged as a policy violation.
For static credentials that don't need to be static, Clutch provides one-click migration to ephemeral identities. Long-lived AWS access keys move to IAM Identity Center sessions or IRSA. Static GitHub PATs move to GitHub Actions OIDC. Service account keys in GCP move to Workload Identity Federation. Static OAuth client secrets move to short-lived federated tokens. Rotation creates a false sense of security; ephemeral identities remove the static credential entirely. The migration honors Identity Lineage®, Clutch knows every place the static credential is consumed and updates all of them, not just the canonical one.
Orphan detection runs continuously through Workforce Attribution. When Okta or Entra ID signals that an employee left, Clutch flags every non-human identity for which the employee was the provisioner or accountable owner, routes each orphan to the most likely current owner derived from the workload graph, and surfaces an actionable ticket, with Identity Lineage® showing every reachable resource. The "no one's coming to deprovision that service account" archetype becomes a queued workflow, not a postmortem.
Deprovisioning is graph-aware. When an identity is approved for removal, Clutch deprovisions it across every system Identity Lineage® says it touches, IAM, Secrets Manager, repos, Okta, Kubernetes, not just the canonical one. Zero Knowledge Architecture ensures that even during deprovisioning, secret material stays in the customer environment.
Practical Examples
A long-lived AWS access key migrated to a federated identity. A developer created an IAM user with programmatic access for a 2022 data migration. The key still lives in a .env file in a repo and is consumed by a Lambda and a Jenkins job. Clutch's lifecycle engine flags the static credential, maps every consumer through Identity Lineage®, and offers a one-click migration to an IRSA-backed federated identity for the Lambda and a GitHub Actions OIDC token for the Jenkins job. The static key is deprovisioned after the cutover; Workforce Attribution closes the loop with the workload's current owner.
An offboarded engineer's orphans deprovisioned in a single workflow. A senior engineer leaves the company. Clutch's Workforce Attribution flags 12 non-human identities, an AWS IAM user, two GitHub fine-grained PATs, an Okta service user, three Salesforce OAuth grants, an MCP server installed on her workstation, and three Kubernetes service account tokens. The orphans are routed to her former manager with Identity Lineage® attached. The manager approves deprovisioning; Clutch removes the credentials across all five systems and records the lifecycle event.
An over-privileged service account right-sized by observed usage. A platform team's service account holds s3:* and dynamodb:* permissions for a workload that, observed over 60 days through Identity Lineage®, only calls s3:GetObject and dynamodb:Query on two specific resources. Clutch surfaces the drift between intent and usage, drafts a least-privilege policy from the observed call pattern, and offers a one-click right-sizing to the workload's owner.
Frequently Asked Questions
The Bottom Line
Most non-human identities have no lifecycle, they're created, they accumulate permissions, and they sit until a breach reminds someone they exist. Vault rotation, IAM consoles, CSPM dashboards, and quarterly access reviews each touch a slice; none manages the full state machine from creation to clean deprovisioning. Clutch Security manages the entire NHI lifecycle through Identity Lineage® and Workforce Attribution, continuous detection, automatic ownership, usage governance, migration to ephemeral identities, orphan detection, and graph-aware deprovisioning across every system the credential touches. As NHI volume grows 300–500% annually under agentic AI, the lifecycle has to be a system, not a spreadsheet.