TL;DR: P0 Security shows that AWS environments keep accumulating standing access through over-provisioned roles, dormant credentials, and unused policies that teams struggle to safely remove, even when they believe least privilege is in place. The governance gap is not visibility alone but the inability to prove what is safe to remove without breaking production.
At a glance
What this is: This is a walkthrough on fixing standing AWS access, showing how over-provisioned IAM roles, unused privileges, and dormant credentials create persistent exposure even in environments that believe least privilege is already enforced.
Why it matters: For IAM, PAM, and cloud identity teams, the issue is governance latency: if you cannot trace who can access what and remove it safely, standing access becomes a permanent attack surface rather than a review item.
By the numbers:
- permissions haven’t been used in over 90 days, but still carry high-risk actions like data exfiltration or policy modification.
👉 Read P0 Security's walkthrough on fixing standing AWS access in production
Context
Standing AWS access is the condition where identities keep permissions, roles, or credentials long after the business need has passed. The governance problem is not simply that access exists, but that teams cannot reliably determine which access paths are safe to remove without creating production risk.
In practice, that leaves IAM reviews, audits, and remediation efforts stuck between two bad choices: leave excess access in place or remove it by trial and error. This article is about the operational gap between least privilege as a policy and least privilege as something teams can safely enforce at scale.
The primary identity security issue is non-human access governance in AWS, especially over-provisioned IAM roles, dormant credentials, and stale policies that persist because ownership and usage are hard to prove.
Key questions
Q: What breaks when unused AWS access is not identified and removed?
A: Unused access becomes latent attack surface. Roles, permissions, and federated entitlements remain available even when no longer needed, which broadens blast radius if credentials are compromised. It also weakens compliance evidence because access recertification no longer reflects real usage, and teams lose clarity about which permissions are actually active versus simply granted.
Q: Why does standing AWS access create incident risk even when least privilege is the policy?
A: Least privilege fails when it is treated as a one-time approval rather than a living control. In AWS, roles and policies can stay broad, idle, and active at the same time, which means attackers do not need new access if old access is still valid. The risk is persistence, not intent.
Q: How do security teams know whether an AWS permission is actually safe to delete?
A: They need evidence of usage, dependency, and reachability before removal. If a permission has not been used, security teams still need to confirm what resource it reaches, whether another workflow depends on it, and whether the same access exists elsewhere. Safe deletion is a validation exercise, not a guess.
Q: How should IAM and PAM teams work together on AWS standing access?
A: IAM teams should identify and right-size roles, while PAM teams should focus on high-risk actions and revocation discipline. The handoff matters because standing access often behaves like privileged access even when it sits inside ordinary cloud roles. Shared governance prevents cleanup from becoming a one-team blind spot.
Technical breakdown
Why standing AWS access persists in production environments
Standing access persists when IAM permissions, roles, and credentials are granted once and then treated as static, even as workloads, owners, and operational need change. In AWS, that persistence is amplified by fragmented views across consoles, policies, and resources. Security teams may know an identity exists, but not whether it is still used, whether it can reach a sensitive resource, or whether it is safe to remove. That turns ordinary governance into investigation work, and investigation work into delay. The mechanism problem is not lack of control objects. It is lack of an authoritative relationship map between identities and resources.
Practical implication: Build a current identity-to-permission inventory before attempting removals, or every cleanup becomes guesswork.
How unused privileges become a standing-access risk
Unused privileges are dangerous because they are still live privileges. If a role has not been exercised for months, it can still be abused the moment an attacker or insider obtains it, and it often carries high-impact actions such as policy modification or data access. The article points to a common governance failure: teams confuse inactivity with safety. In reality, a dormant permission set can be more dangerous than an active one because nobody is watching it closely. Least privilege depends on lifecycle visibility, not only on policy design at issuance time.
Practical implication: Treat dormant but active permissions as candidate removal items and require usage evidence before keeping them.
What real-time access graphs change about least privilege enforcement
A real-time access graph changes the control from periodic review to continuous reasoning. Instead of asking whether a role was once approved, teams can trace which identities can reach which resources, through what chain of permissions, and whether that path is still necessary. That matters because AWS governance often fails at the answerability layer: teams cannot quickly answer who can access an EC2 instance, whether the access is actually used, or whether a policy can be deleted safely. Continuous mapping does not replace governance judgment, but it makes removal decisions evidence-based rather than speculative.
Practical implication: Use live identity graphs to validate access paths before remediation and to shorten the window between discovery and safe removal.
Threat narrative
Attacker objective: Exploit unrevoked AWS access paths to reach sensitive resources and expand control without needing a fresh compromise.
- Entry occurs when attackers or insiders inherit standing AWS permissions that were never withdrawn after the original need expired.
- Credential or privilege access is available through dormant credentials, over-provisioned roles, or broad policies that remain active but unmonitored.
- Escalation happens when those permissions include policy modification, resource access, or data-exfiltration actions that expand blast radius.
- Impact follows when persistent access is used to reach production resources, alter controls, or exfiltrate data without immediate detection.
Breaches seen in the wild
- Azure Key Vault Contributor escalation 2024: Datadog found Azure Key Vault Contributor could add itself to access policies and read every secret, key and certificate in a vault.
- ArtiPACKED 2024: Unit 42 found public GitHub Actions artifacts in major open source projects leaking live GITHUB_TOKENs, runtime tokens and cloud tokens.
Read and download The State of NHI & AI Agent Breach Report 2026, covering 150+ breaches impacting Non-Human Identities including AI Agents.
NHI Mgmt Group analysis
Standing AWS access is a lifecycle failure, not a visibility problem. The hard part is not finding that permissions exist, but proving when they are still justified and safely removable. AWS gives teams the primitives, but not the governance answerability needed to enforce least privilege without operational fear. That is why standing access persists even in mature environments: the access lifecycle is not being governed as a lifecycle.
Least privilege breaks down when teams cannot safely remove access. Security programmes often assume the main challenge is granting the right access once. In AWS, the bigger challenge is revocation confidence, because removal is delayed when teams cannot trace downstream dependencies. The result is a control gap where excess access survives simply because the organisation cannot tolerate uncertainty. Practitioners need to treat safe removal as a first-class governance requirement.
Unused privilege should be treated as active exposure, not dead weight. Access that has not been used for 90 days can still contain high-risk actions such as data exfiltration or policy modification. That creates what we can call governance debt: permissions that remain in place because no one has enough evidence to retire them. The implication is straightforward. Reviews must move from approval history to usage evidence and dependency mapping.
Real-time identity graphs are becoming the control plane for standing access reduction. The article reflects a wider market shift away from static IAM reviews toward continuous relationship mapping across identities, credentials, and resources. That direction makes sense because the question is no longer just who was granted access, but which access paths still exist and why. For practitioners, the governing unit is the access path, not the policy document alone.
Zero standing privilege is emerging as the right end state for cloud governance. Standing access is no longer just a hygiene issue. It is an architectural problem that compounds audit friction, incident response friction, and remediation risk. The practical consequence is that IAM, PAM, and cloud security teams need shared ownership of revocation logic, not separate review rituals. The programme that cannot remove access safely does not yet control access.
From our research library:
- Systems with least-privileged AI access had a 17% incident rate vs 76% for over-privileged systems. Organisations failing to scope AI access properly are 4.5x more likely to experience a security incident, according to the 2026 Infrastructure Identity Survey.
- 97% of NHIs carry excessive privileges, increasing unauthorised access and broadening the attack surface, according to the Ultimate Guide to NHIs.
- Read next: NHI Lifecycle Management Guide
What this signals
Governance debt is the better lens for standing AWS access. The problem is not merely that permissions are over-assigned. It is that organisations accumulate access paths faster than they can prove them safe to remove, which leaves least privilege stuck in review mode instead of operating mode. Teams should measure revocation confidence, not just permission counts.
Identity graphs are becoming the practical control for cloud revocation. Static entitlement lists are too blunt for production AWS estates because they do not show who can reach what through indirect permission chains. A live relationship map gives IAM and PAM teams the evidence needed to retire access without creating self-inflicted outages.
Usage evidence has to replace assumption-based governance. Access reviews that rely on ownership memory or periodic approval cycles will always lag behind cloud change. The programme signal to watch is whether teams can answer, in minutes rather than hours, why an identity still needs a given path to a sensitive resource.
For practitioners
- Audit standing AWS privileges by usage evidence Compare IAM roles, policies, and credentials against actual usage before deciding what to remove. Focus first on privileges with no observed activity, especially those tied to sensitive actions or production resources.
- Prioritise dormant privileges with high-risk actions Target permissions that have been unused for long periods but still allow policy modification, data access, or other high-impact operations. Treat inactivity as a triage signal, not as proof of safety.
- Map identity-to-resource paths before remediation Build a current graph of which identities can reach which resources and through what chain of permissions. Use that map to confirm whether a policy can be removed without breaking production dependencies.
- Shift cleanup from annual review to continuous governance Replace one-time access reviews with ongoing checks that surface unused, overexposed, or risky permissions as they appear. Make revocation a repeatable workflow rather than a special project.
Key takeaways
- Standing AWS access persists because teams cannot confidently remove permissions once they are no longer needed.
- Unused privileges are still live exposure, especially when they retain high-risk actions on production resources.
- Continuous identity-to-resource mapping is what makes least privilege enforceable without breaking production.
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 NIST SP 800-53 Rev 5 and NIST CSF 2.0 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| OWASP Non-Human Identity Top 10 | NHI-05 — Overprivileged NHI | Standing AWS roles and credentials are classic overprivileged non-human identities. |
| NHI-01 — Improper Offboarding | Access persists because identities are not fully retired when need ends. | |
| Recommendation — Review AWS roles against NHI-05 and remove excess entitlements that exceed current need. Apply NHI-01 to revoke dormant AWS access paths when ownership or use has ended. | ||
| NIST SP 800-53 Rev 5 | IA-5 — Authenticator Management | Authenticator lifecycle governs dormant credentials and revocation discipline. |
| Recommendation — Use IA-5 to manage AWS credential rotation, revocation, and expiry for stale access. | ||
| NIST CSF 2.0 | PR.AA-05 — Access Permissions, Entitlements and Authorizations | The article is about controlling entitlements across cloud identities and resources. |
| Recommendation — Apply PR.AA-05 to continuously validate and reduce AWS entitlements to least privilege. | ||
| MITRE ATT&CK | TA0006;TA0008 — Credential Access; Lateral Movement | Persistent AWS access supports credential abuse and movement across resources. |
| Recommendation — Map standing access gaps to TA0006 and TA0008 to prioritise exposed cloud paths. | ||
Key terms
- Standing Access: Standing access is persistent privilege that remains available without fresh approval or contextual checks. In NHI environments, standing access usually appears as long-lived tokens, reusable service accounts, or broad roles attached to automation. It is convenient operationally, but it expands risk when conditions change or secrets leak.
- Governance Debt: The accumulation of unresolved identity control weaknesses created when teams prioritise speed over lifecycle design. In NHI environments, it shows up as accounts with unclear ownership, undocumented purpose, stale credentials, and no reliable retirement path, all of which make later security work harder.
- Identity Graph: An identity graph is a relationship map that connects identities, assets, data, and permissions so teams can see how access actually flows. In NHI programmes, it helps explain which agent is related to which owner, which system, and which policy boundary.
- Zero Standing Privilege: A control model in which an identity does not keep persistent access unless it is actively needed. For NHIs, this means credentials and permissions are issued for a narrow task and then removed. It reduces the time window and reuse value of stolen access.
What's in the full article
P0 Security's full video covers the operational detail this post intentionally leaves for the source:
- The live AWS access graph workflow for tracing who can reach a specific resource and through which permission chain
- The command generation and remediation steps used to strip unused privileges without disrupting production
- The walkthrough of how Access DNA and the Identity Graph surface overexposed or dormant access paths
- The practical sequence for moving from detection to safe least-privilege enforcement in AWS
Deepen your knowledge
NHI governance, machine identity security, and identity lifecycle management are core topics in our NHI Foundation Level course, the industry's only accredited NHI security programme. If you are building or maturing an IAM programme, it is worth exploring.
Published by the NHIMG editorial team on September 30, 2026.
Updated on October 8, 2026.
NHI Mgmt Group, the independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org