How to Manage Non-Human Identities (Before They Manage You)

May 29, 2025

2 mins

Matt (Co-Founder and CEO)

In our last post, we talked about non-human identities (NHIs) — the bots, APIs, scripts, and agents quietly running your software behind the scenes.

If you’re running any modern SaaS, they already outnumber your human users by orders of magnitude.

But here's the thing: most systems still treat them like an afterthought. Or worse, like users in a bad disguise.

That’s how breaches happen.
That’s how secrets leak.
That’s how you end up with a rogue script still posting to production Slack three years after its creator left the company.

So: let’s talk about how to actually manage non-human identities.

Step 1: Treat Them as First-Class Citizens

Stop shoehorning agents into human login flows or hardcoding keys into environment variables. Create a dedicated identity model for NHIs that answers:

  • What type of entity is this? (Agent, bot, script, service)

  • Who owns it? (Human, team, system)

  • What scope does it need? (Read-only? Limited environment?)

  • What is its lifecycle? (Ephemeral? Permanent? CI/CD-linked?)

Give each NHI a traceable owner, a purpose, and a lifespan.

Step 2: Issue Machine-Native Credentials

Humans use passwords. NHIs use:

  • Client credentials (OAuth2)

  • Signed JWTs

  • Mutual TLS certs

  • API keys with scopes

But these must be:

  • Short-lived (minutes, not months)

  • Rotatable (without downtime)

  • Revocable (with immediate effect)

If you're still using static keys from 2022, you have a security problem — not a convenience feature.

Step 3: Define Access in Code

You can’t manage thousands of agents with point-and-click dashboards. You need to:

  • Codify access rules in a DSL or policy engine

  • Store policies in version control

  • Apply CI/CD to your security decisions

  • Preview access changes before you ship them

Think Terraform for access, not checkboxes in a web UI.

Step 4: Make Them Observable

You should be able to answer:

  • What is this agent doing?

  • When did it last act?

  • Who approved its creation?

  • Is it doing something unusual?

If the answer is “I don’t know” — that’s a gap.

You need:

  • Audit trails for every action

  • Anomalous behavior detection

  • Alerts on orphaned or over-permissioned agents

NHIs don’t have intent. So it’s your job to make sure they’re not silently going rogue.

Step 5: Kill What You Don’t Need

  • Expire credentials automatically

  • Rotate tokens regularly

  • Archive or delete unused identities

  • Add ownership reviews to quarterly ops

The riskiest identity is the one no one remembers still exists.

Final Thought:

You wouldn’t let a junior dev spin up an AWS superadmin account with no oversight.
So why are your scripts, bots, and AI agents running with god mode?

Non-human identity management isn’t a feature.
It’s the foundation of secure software in the automation era.

And if you don’t design for them today, you’ll be cleaning up after them tomorrow.