> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enfors.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Tenant isolation & access controls

> How Enfors keeps each customer's data separate and limits who can see it.

## Tenant isolation

Customer data is isolated using **Row-Level Security (RLS)** enforced at the **database
layer**. Each tenant's data is scoped at the database level, so tenant boundaries hold
**regardless of how the application is called** — they are not application-dependent.

Every record is scoped to three identifiers — **tenant**, **workspace**, and **user**. In
the graph database, every node also carries `tenant_id`, `workspace_id`, and `user_id`, and
queries must filter by at least `tenant_id`.

<Note>
  RLS policy definitions are available on request as part of the IT & CISO Deployment
  Package.
</Note>

## Access controls

Access to customer session data is restricted to **Enfors engineering on-call personnel
only**. No other Enfors staff — **including leadership** — have standing access to
production customer data.

## Identity & authentication

| Surface                                | Authentication                                             |
| -------------------------------------- | ---------------------------------------------------------- |
| Enfors UI                              | enterprise SSO (Google, Okta OIDC)                         |
| MCP server                             | OAuth 2.0 / SSO                                            |
| Watcher — Claude Code + Claude Desktop | Cognito OAuth2 + PKCE id-token (`Authorization: Bearer …`) |
| Gateway — agent SDKs                   | per-tenant LiteLLM key (`x-litellm-api-key`)               |

See [SSO](/integrations/sso) and [MCP overview](/mcp/overview).
