Restore the data compartmentalization AI connectors erase
The moment you connect Claude or ChatGPT to Drive, Gmail, or any internal API, every seat in your AI tenant can potentially pull every other user's data through the shared connector — and the agent can take actions the user could never authorize directly. PortEden re-imposes the boundaries: per-user data scoping, per-request action enforcement, and a signed audit trail of every decision.
Compartmentalization collapses the moment you connect
Every native AI connector ships with the same gaps. Together they let any seat in your AI tenant reach data they were never meant to see — and perform actions no policy ever authorized.
User A pulls User B's data through the same connector
Most AI connectors authenticate once at the workspace level and serve the entire AI tenant. Anyone with a Claude or ChatGPT seat can prompt the connector for any record it can technically reach — across teams, matters, projects, and clearance levels. The per-user boundaries your IdP and your data platform enforce do not survive the connector.
OAuth scopes describe capabilities, not boundaries
"gmail.readonly" grants the whole mailbox; "drive.readonly" grants every shared drive. No connector spec lets you pin access to one matter folder, one project, one date range, or one purpose. There is no scope for "only what this user, on this team, for this purpose, should see."
Agents perform unenforced operations
Once a connector can send mail, share files, create tickets, or call billing endpoints, an LLM under prompt injection or a confused workflow can chain those actions in ways no human approval ever sanctioned. The agent's effective authority is the union of every verb in every scope — not the narrower authority the user actually has.
Three pillars of enterprise AI governance
Identity sync that survives the connector
SCIM 2.0 from Okta, Microsoft Entra ID, and Google Workspace pins every Claude, ChatGPT, Copilot, and MCP request to a current, named identity. Joiner-mover-leaver propagates in seconds. A deprovisioned user cannot keep an agent session alive on a stale token.
Per-user data scoping and per-action enforcement
Every tool call is bound to the prompting user's identity and decided against subject, resource, action, AI-client, environment, and context attributes. User A's request only returns what User A is entitled to see. Send, share, delete, and external-write verbs are individually gated — an agent cannot chain destructive operations that the user has no policy to perform.
Auditable evidence per agent and per request
Tamper-evident log of every authorization decision with the policy version, attribute snapshot, and outcome. SIEM stream to Splunk, Datadog, Elastic, or S3 — signed CSV exports for SOC 2 CC6.1, HIPAA §164.312(b), and ISO 27001 A.5.15 access reviews.
How AI data compartmentalization helps you satisfy the controls your auditors read
| Requirement | What PortEden does | Evidence |
|---|---|---|
| SOC 2 CC6.1 / CC6.3 — Logical access controls & user access | Per-request access decisions across every AI client and connector. Continuous evidence collection via SIEM stream supports CC6.1 and CC6.3 populations without manual sampling. | Per-request decision log · SIEM-stamped evidence |
| HIPAA §164.312(a)(1) — Access control (technical safeguard) | Unique user identification on every tool call, short-lived scoped tokens, encryption (TLS 1.3 + AES-256), and emergency access via audited break-glass — applied uniformly across Claude, ChatGPT, Copilot, Gemini, and MCP servers. | Short-lived scoped JWTs · audited break-glass |
| HIPAA §164.502(b) — Minimum necessary | Compartmentalization at the request boundary: each AI tool call is narrowed to the smallest scope a workflow needs (one patient panel, one folder, one verb). Over-broad OAuth scopes are masked by policy-side narrowing. | Per-request scope narrowing · default-deny on missing purpose |
| GDPR Art. 5(1)(b) & 5(1)(c) — Purpose limitation & data minimization | Purpose is a required policy attribute. Requests without a registered purpose are denied. Data is filtered to the minimum necessary for the stated purpose before it reaches the model. | Purpose-attribute gating · per-request minimization log |
| ISO 27001 A.5.15 — Access control | Documented access-control policy expressed as code. Roles and attributes inherit from the IdP via SCIM; access reviews exportable as signed evidence per AI vendor and per integration. | Policy-as-code · signed access-review CSV |
| NIST 800-53 AC-6 — Least privilege | Six-layer enforcement narrows every agent request from the broad OAuth grant to the least-privilege scope a task needs. Privilege escalation requires explicit approval recorded in the audit trail. | Six-layer per-request narrowing · approval-trail audit |
Built for procurement
Talk to our enterprise team
30-minute discovery call. Bring your security questionnaire.
Frequently Asked Questions
Why don't OAuth scopes already solve compartmentalization for AI agents?
How does PortEden compartmentalize a single Claude or ChatGPT connection across teams and matters?
A user prompts Claude about another user's matter — what stops the agent from returning it?
How do you stop an agent from performing operations the user couldn't authorize directly?
We use Okta / Entra ID — how fast does deprovisioning reach a running agent?
Does this work for MCP servers and direct REST API agents alike?
Can the same AI client be allowed for one workload and denied for another?
What audit evidence do we get for an access review?
Ready to govern AI across your organization?
Book a discovery call. Bring your security questionnaire — DPA, subprocessor list, and pen-test summary available on request.