Join our Newsletter — 33% off our NHI Course

What do teams get wrong about IAM hygiene and credential discovery?

A common mistake is treating identity visibility as a periodic audit instead of an ongoing control. Another is relying on standalone tools that do not cover the full credential surface, which leaves gaps across systems. Teams also under-estimate how many identity artifacts exist outside formal IAM processes, especially when developers create or store credentials informally.

Why IAM Hygiene Breaks Down in Real Environments

IAM hygiene fails when teams treat identity inventory as a one-time project instead of a living control. The common blind spot is not just human accounts, but workload identities, API keys, service credentials, and developer-created secrets that sit outside formal onboarding and offboarding paths. That creates a gap between what the IAM team thinks exists and what systems can actually authenticate with.

For non-human identity programs, this is not a minor bookkeeping issue. The 2024 Non-Human Identity Security Report from Aembit found that 88.5% of organisations say their non-human IAM practices lag behind or merely match their human IAM maturity, which is a strong signal that the operational model is still immature. The practical problem is that discovery has to keep up with change across cloud, CI/CD, SaaS, and application code, not just HR events or quarterly reviews. The Guide to the Secret Sprawl Challenge is useful here because it shows why secret inventories fragment across teams and tools.

In practice, teams usually discover the gap only after a credential has already been used, leaked, or missed during a rotation cycle.

How Credential Discovery Actually Works

Effective credential discovery is broader than scanning vaults. Teams need continuous visibility across source control, container images, build logs, CI/CD variables, cloud metadata, chat exports, configuration files, ticket attachments, and application runtime environments. The point is to detect every place a secret can exist, not just the places IAM formally manages.

That requires correlating multiple views of the environment. A vault may hold the intended secret state, but code repositories and deployment pipelines often show where credentials were copied, hard-coded, cached, or temporarily exposed. Discovery also has to distinguish between a credential that is stored, one that is active, and one that still has effective access. Those are different operational states, and treating them as the same leads to false confidence.

For non-human identities, lifecycle matters as much as inventory. A credential that is technically discoverable but never linked to an owner, application, or expiry date is still an unmanaged access path. The NHI Lifecycle Management Guide helps frame why discovery must connect to ownership, rotation, and retirement rather than stopping at detection. At the control level, the OWASP Non-Human Identity Top 10 is relevant because it captures the recurring failure patterns around secret sprawl, over-privileged machine access, and weak lifecycle governance.

  • Start by building one inventory that merges code, cloud, CI/CD, and vault findings.
  • Tag each credential by owner, workload, environment, privilege scope, and expiry.
  • Alert on new secret creation outside approved workflows, not just on known leaked values.
  • Verify that discovered credentials are rotated, revoked, or re-scoped when they are no longer needed.

These controls tend to break down when discovery is limited to a single product class, because the hidden credentials usually live in the gaps between repositories, pipelines, and ad hoc developer workflows.

Where Teams Misjudge the Risk of Secret Sprawl

Tighter discovery programs create more noise at first, because they surface abandoned credentials, duplicated secrets, and informal workarounds that teams have tolerated for years. That is a useful tradeoff: the visibility problem becomes visible before it becomes an incident.

The biggest misjudgment is assuming that a secret is low risk until it is confirmed exploited. In reality, exposed credentials can become an immediate access path even when the surrounding system is otherwise well protected. The Aembit report notes that only 19.6% of security professionals express strong confidence in their organisation’s ability to securely manage non-human workload identities, which aligns with the broader maturity gap. For teams trying to reduce the attack surface, the relevant question is not whether a secret was intended to be temporary, but whether it can still authenticate anywhere today. The Guide to the Secret Sprawl Challenge and the OWASP Non-Human Identity Top 10 both reinforce that informal storage and delayed revocation are the conditions that turn routine hygiene failures into real exposure.

Current guidance suggests treating credential discovery as a continuous governance function, not a periodic audit artifact.

Standards & Framework Alignment

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

OWASP Non-Human Identity Top 10 and MITRE ATT&CK address the attack and risk surface, while CIS Controls v8 set the governance and control requirements practitioners need to meet.

Framework Control / Reference Relevance
OWASP Non-Human Identity Top 10 NHI-01 — Secrets and Credential Management Secret sprawl and unmanaged machine credentials are the core subject.
NHI-02 — Identity Lifecycle Management Discovery must connect to ownership, expiry, and retirement of NHI assets.
Recommendation — Inventory all non-human secrets and enforce rotation, revocation, and ownership. Bind discovered credentials to owners and retire access when workloads change.
CIS Controls v8 6 — Access Control Management IAM hygiene failures arise from unmanaged access paths and stale credentials.
16 — Application Software Security Credentials often leak through code, pipelines, and build artifacts.
Recommendation — Review and remove unnecessary accounts and credentials on a continuous schedule. Scan software pipelines and repositories for embedded secrets before release.
MITRE ATT&CK T1552 — Unsecured Credentials The question centers on how exposed or informal credentials evade governance.
Recommendation — Detect credentials in files, source, and configs before attackers can reuse them.

Practitioner Guidance

What to prioritise: Focus first on credentials that can still authenticate to production systems, especially long-lived secrets in repositories, build systems, and shared automation. Those are the artifacts most likely to create immediate blast radius if they are stale or duplicated.

What to verify: Verify that every discovered secret has an owner, an expiry or rotation path, and a known usage context. If any of those are missing, treat the credential as unmanaged rather than merely undocumented.

Common mistake: Do not equate “found in a scan” with “under control.” A discovered secret that is still present in code, pipeline variables, or copied configuration may be more important than the same secret already stored in a vault, because the former often indicates uncontrolled propagation.

Practitioner takeaway: IAM hygiene improves when teams measure the full credential surface and force each secret to prove ownership, necessity, and revocability, not when they rely on periodic inventory reviews.