How can you let an AI‑driven chain‑of‑thought process query a database or invoke a remote service without handing it permanent secrets, especially when the request comes from a non-human identity?
Today many teams simply give their automation scripts a long‑lived service account key or embed a static password in a configuration file. The same credential is reused across dozens of pipelines, test runners and scheduled jobs. Engineers copy the file between environments, and the key lives in version control histories for months. When a non-human agent runs, there is no record of which logical step issued the request, what data was returned, or whether the response contained sensitive fields. The result is a blind spot: broad standing access, no per‑request audit, and no ability to mask or block risky queries.
Moving to a token‑based model is a common first step. By issuing short‑lived OIDC tokens to bots, you gain identity information and can enforce least‑privilege scopes. The token proves the request originates from a non-human identity, and the identity provider can rotate keys automatically. However, the token is still presented directly to the target service. The gateway that sits between the token and the resource is missing, so the request reaches the database or API unchanged. In short, the setup improves authentication but leaves enforcement completely open.
Why non-human identity alone is insufficient
Non-human identities give you visibility into *who* is making a call, but they do not control *what* is being done. Without a data‑path enforcement point, a bot can still run a destructive command, exfiltrate PII, or trigger a cascade of downstream calls that bypass any policy you might have defined in your identity provider. The request travels straight to the target, meaning any masking or audit must be built into the target itself – an approach that is fragile and hard to maintain across heterogeneous systems.
This gap becomes especially visible in chain‑of‑thought workflows, where an LLM may generate a series of queries based on intermediate reasoning. Each step could leak partial data, and the overall reasoning path may need to be reviewed by a human before execution. Relying only on token scopes does not give you the ability to pause, review, or redact data in real time.
Placing enforcement in the data path with hoop.dev
hoop.dev provides the missing layer. It sits between the non-human identity token and the target service, acting as a Layer 7 gateway that can inspect each protocol message. When a bot presents its OIDC token, hoop.dev validates the token (setup) and then applies policy at the gateway (data path). Because the gateway controls the flow, hoop.dev can:
