The clearest sign is a discovery program that only sees identities exposed by management APIs. If LDAP binds, database logins, Kubernetes tokens, or internal API calls never appear, the inventory is incomplete by design. Another warning is when configuration lists identities but no runtime path shows last use, source location, or fan-out across systems.
When discovery only sees management-plane identities
Missing environment coverage usually shows up as a discovery method that is technically accurate but operationally narrow. If the program mainly reports what is visible through one control plane, it will miss identities that authenticate elsewhere, such as directory binds, database connections, cluster service tokens, or internal service-to-service calls.
That pattern matters because inventory completeness is not the same as API coverage. A discovery result can look clean, normalized, and well owned while still omitting entire classes of runtime access paths that actually carry production risk.
When a team can explain every listed identity but cannot explain where those identities are used at runtime, the inventory is descriptive rather than observational. A mature program should be able to connect identity records to actual access paths, not just to configuration objects.
What missing runtime evidence tells you
The strongest warning sign is the absence of behavioral signals. If last-use timestamps, source locations, peer connections, or fan-out across systems are never visible, then the tool is likely ingesting configuration state without seeing authentic usage. That leaves you blind to dormant identities, duplicated credentials, and identities that still work even though they are no longer obvious in configuration.
This is where coverage gaps become practical. An identity inventory that cannot distinguish active from merely present will overstate confidence in review, rotation, and offboarding decisions. It may also hide cross-environment reuse, where the same identity material is functioning in places the discovery process does not inspect.
For NHI programs, runtime evidence is the difference between a catalog and a control. The goal is not only to know that an identity exists, but to know whether it is still authenticating, where it authenticates from, and whether its reach is wider than the team intended.
How to tell whether the gap is real
A simple test is to compare the discovery feed against independent runtime sources. If LDAP authentication, database logs, cluster audit trails, internal API telemetry, or secret-access logs show activity that the inventory never reflects, the environment is not being covered end to end. Another test is reconciliation: the same identity should be visible both as a managed object and as an observed runtime actor.
Discovery also tends to fail in environments with many parallel access patterns. A program built around one platform, one vault, or one inventory source will miss systems that use local auth, embedded tokens, legacy protocols, or private service interactions. The broader the environment, the more important it becomes to reconcile inventory data with actual authentication and authorization events.
- Check whether identities are discovered from runtime evidence, not just from administration interfaces.
- Compare inventory entries with logs that prove recent use, source, and destination.
- Look for access paths that never appear in the inventory but do appear in system telemetry.
Risk and Threat Considerations
Incomplete discovery creates a blind spot that attackers can exploit and defenders can inherit. If hidden identities are still valid, they can support persistence, lateral movement, or unauthorized access long after the business believes the asset has been found and governed.
Failure mechanism: A narrow discovery source, such as a management API, omits identities that authenticate through other channels, so active credentials and access paths remain outside the inventory and outside review.
Impact: Teams undercount their real attack surface, miss dormant or reused credentials, and can fail to revoke or rotate the identities most likely to be abused.
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 addresses the attack surface, NIST SP 800-53 Rev 5 sets the technical controls, and ISO/IEC 27001:2022 defines the regulatory obligations.
| Framework | Control / Reference | Relevance |
|---|---|---|
| OWASP Non-Human Identity Top 10 | NHI-01 — Improper Offboarding | Missing discovery leaves live NHIs unreconciled and hard to remove. |
| NHI-06 — Insecure Cloud Deployment Configurations | Cloud discovery gaps often come from missing runtime paths and hidden access surfaces. | |
| NHI-09 — NHI Reuse | Undiscovered runtime paths can conceal identity reuse across systems and environments. | |
| Recommendation — Reconcile runtime evidence before offboarding or revoking NHIs. Scan cloud access paths beyond management-plane inventory. Detect and eliminate reused identities across environments. | ||
| NIST SP 800-53 Rev 5 | IA-5 — Authenticator Management | Incomplete discovery weakens lifecycle control over authenticators and secrets. |
| AU-6 — Audit Record Review, Analysis, and Reporting | Runtime evidence is needed to spot identities missing from inventory. | |
| Recommendation — Track authenticators with runtime evidence and rotate when use is unclear. Correlate audit records with identity inventory to find blind spots. | ||
| ISO/IEC 27001:2022 | A.5.9 — Inventory of information and other associated assets | Identity discovery is an asset-inventory problem when coverage is incomplete. |
| A.5.18 — Access rights | Undiscovered identities undermine access-rights review and revocation. | |
| Recommendation — Maintain an inventory that is validated against observed use. Review access rights against both inventory and runtime evidence. | ||
Practitioner Guidance
What to verify: Require at least one independent runtime signal for each discovered identity, such as recent use, source system, or downstream fan-out. If those fields are absent, treat the record as incomplete until proven otherwise.
Decision rule: If an identity only appears in a static list, but never in authentication, audit, or network evidence, do not trust it as a complete inventory object. Escalate that gap before using the inventory for offboarding or access review.
What good looks like: The same identity can be traced from discovery to runtime activity to owning system, with no unexplained identities in logs and no inventory entries that lack usage context.
Practitioner takeaway: The right question is not whether the discovery tool found identities, but whether it can prove where those identities actually operate.
Related resources from NHI Mgmt Group
- What are the signs that workload authorization is failing in a non-human identity environment?
- How should security teams govern non-human identities at scale?
- How should security teams govern non-human identities for compliance?
- Why do non-human identities create more audit risk than human accounts?