A subagent should only be able to act after a recent, documented access review confirms that its permissions match the current business need. In that ideal state, every automated job, CI pipeline step, or AI‑driven assistant that runs on behalf of a user is granted just‑in‑time privileges, and any deviation is flagged before the request reaches the target system. The review record is stored centrally, searchable, and tied to the identity that triggered the subagent, making audits straightforward and compliance evidence readily available.
In practice, many teams let subagents inherit broad, long‑lived credentials. A CI runner might hold a database password that never expires, an AI‑assistant could be wired directly to a Kubernetes cluster, and a background service may call internal APIs without any human oversight. Those credentials are often created once during onboarding and then forgotten. Because the subagent talks straight to the target, there is no checkpoint that asks, “Is this still appropriate?” and no log that ties the action back to a recent review.
The risk is two‑fold. First, a compromised subagent can continue to operate with the same privileges indefinitely, expanding the blast radius of a breach. Second, auditors and security teams have no reliable evidence that the subagent’s access was recently validated, forcing them to rely on manual spreadsheets or ad‑hoc interviews that are error‑prone and hard to scale.
Why subagents need formal access reviews
Subagents are non‑human identities. They are created to perform specific tasks, yet they often receive the same standing access as a human operator. The principle of least privilege tells us to grant only what is needed, but without a review gate the subagent’s request bypasses any policy enforcement. Access reviews close that gap by providing a deliberate, auditable decision point before the subagent reaches the protected resource. Even after the review, the subagent still connects directly to the target, which means the request is still unobserved and un‑controlled once it leaves the review process.
Putting the review gate in the data path
That missing control point belongs in the data path, and hoop.dev is built precisely for that role. hoop.dev acts as a Layer 7 gateway that sits between the subagent and the infrastructure it wants to touch. Because every packet flows through hoop.dev, the system can enforce access‑review decisions in real time.
When a subagent initiates a connection, hoop.dev first validates the OIDC token that represents the subagent’s service account. It then checks whether a recent access review exists for that identity and the requested operation. If the review is missing or outdated, hoop.dev pauses the request and routes it to an approver, or it can automatically deny the connection based on policy. Once approved, hoop.dev records the decision, tags the session with the reviewer’s identity, and forwards the traffic to the target.
