When teams automatically inspect, mask, and record every command, query, or API call, they achieve in-transit data governance. Engineers see only the results they are authorized to see, auditors receive an immutable replay of each session, and compliance officers can demonstrate that data never traveled unprotected.
That confidence comes from treating the data path itself as a security control, not an after‑thought. By inserting a transparent Layer 7 gateway, organizations gain real‑time visibility and enforcement without changing the way developers invoke their tools.
Why in-transit data governance matters
Modern toolchains reach into databases, Kubernetes clusters, SSH hosts, and internal HTTP services. Each of those connections carries payloads that may contain personal identifiers, secrets, or regulated information. When a developer runs a query or an automation script, the response flows directly from the target to the client. If the client is compromised, or if an insider runs an unrestricted command, that data can be exfiltrated in a single packet.
Regulations such as GDPR or SOC 2 require evidence that data was protected not only at rest but also while in motion. Traditional network firewalls operate at Layer 3/4 and cannot see the content of SQL rows or Kubernetes manifests. Without a content‑aware control point, organizations rely on trust that every user will behave responsibly, a trust model that is routinely broken.
Current practice leaves data exposed
Most teams grant standing credentials to tools. A service account key lives in a CI pipeline, a shared SSH key sits on a bastion, and a database user with broad privileges appears in application code. The identity system (OIDC, SAML, or IAM) authenticates the request, but once the connection is established, the target system receives a direct TCP stream. No one in the organization can see which rows were returned, which commands were executed, or whether a response contained a credit‑card number.
Even when audit logging is enabled on the target, the logs write after the fact, often without the context needed to prove who saw what. Masking typically applies downstream, after data has already left the protected zone. The result is a gap: the request reaches the resource, but there is no gate that can block a dangerous command, request human approval, or redact sensitive fields before they leave the network.
The missing control: a gateway in the data path
The missing piece is a Layer 7 gateway that sits between identity and the infrastructure resource. The gateway must be the only place where traffic is inspected, where policies are enforced, and where evidence is collected. It must operate on the protocol level, SQL, SSH, Kubernetes exec, HTTP, so it can understand the payload and act on it in real time.
The gateway also needs to integrate with existing identity providers. It should accept OIDC or SAML tokens, map group membership to fine‑grained policies, and issue short‑lived, just‑in‑time credentials to the target. The gateway holds the long‑lived credential for the resource, ensuring that users never see secrets.
Implementing in-transit data governance with hoop.dev
hoop.dev provides exactly the data‑path control described above. It deploys as a network‑resident agent that proxies connections to databases, Kubernetes clusters, SSH hosts, and internal HTTP services. The gateway verifies the caller’s OIDC/SAML token, extracts group claims, and then applies policy before the request reaches the target.
Setup – Teams manage identity outside the gateway. They configure an OIDC provider such as Okta, Azure AD, or Google Workspace. Service accounts or human users receive tokens that encode their roles. The gateway trusts those tokens and uses the claims to decide whether a request may start. Registering a new tool involves adding the target in the gateway, attaching the credential that hoop.dev will use, and defining which groups may request access.
The data path – All traffic flows through hoop.dev. Because the gateway sits at Layer 7, it parses SQL statements, SSH commands, or HTTP payloads. It blocks a command that attempts to drop a table, requires approval for a kubectl exec that touches a production namespace, or masks credit‑card numbers in a query result before the data leaves the network.
Enforcement outcomes – hoop.dev records each session, preserving a replayable audit trail that shows who issued which command and what response was returned. It masks sensitive fields in real time, ensuring that downstream logs never contain raw personal data. It triggers a just‑in‑time approval workflow for high‑risk operations, and it blocks disallowed commands before they execute. Because the gateway holds the target credential, the agent never sees the secret, eliminating credential sprawl.
All of these outcomes exist only because hoop.dev occupies the data path. If the gateway were removed, the same identity setup would still allow a user to connect directly to the database, bypassing masking, audit, and approval.
Getting started
To adopt in-transit data governance, begin by reviewing the getting‑started guide. Deploy the gateway using the provided Docker Compose file or your preferred orchestration platform. Register the tools you need to protect, map your OIDC groups to policies, and enable the masking and approval features that match your risk profile.
For deeper technical details, the learn section explains how policies are defined, how session replay works, and how to configure just‑in‑time approvals.
Explore the hoop.dev repository on GitHub to clone the project, contribute, or customize the gateway for your environment.