Databricks published a production pattern for Genie Agents that routes all governance enforcement through Unity Catalog instead of the model layer. The pattern directly rejects what Databricks calls a "dangerous bet": relying on prompt engineering and LLM instructions to restrict what an agent returns.

The core principle is credential passthrough. Genie Agents run as the end user's identity, not a service account with broad permissions. Every query executes under that user's existing object privileges, ABAC policies, row filters, and column masks. The agent cannot return rows the user cannot see—no prompt engineering required.

Credential passthrough: Genie Agent runs as the end user's identity; all four Unity Catalog access controls enforce at the data layer before results are returned.
FIG. 02 Credential passthrough: Genie Agent runs as the end user's identity; all four Unity Catalog access controls enforce at the data layer before results are returned. — Databricks Engineering Blog

Identity synchronization uses Automatic Identity Management (AIM), which syncs users, groups, and service principals from Microsoft Entra ID or Okta. Just-in-time provisioning means a first-time user arrives with their IdP group memberships already attached. When an employee moves between org units, the IdP update propagates and their next Genie query reflects new access scope. Deactivating them in the IdP revokes all Genie access immediately.

AIM identity sync: user, group, and service-principal changes in the IdP propagate through Automatic Identity Management to Unity Catalog and affect Genie Agent access in real time.
FIG. 03 AIM identity sync: user, group, and service-principal changes in the IdP propagate through Automatic Identity Management to Unity Catalog and affect Genie Agent access in real time. — Databricks Engineering Blog

Structured grounding covers the full Unity Catalog asset roster: Managed Tables, External Tables, Foreign Tables, Views, Metric Views, Materialized Views, and Streaming Tables. Metric Views encode business metrics—revenue formulas, KPI calculations—once in YAML so every consumer, human or agent, computes them identically. Foreign Tables extend the pattern to federated systems without copying data. Four layered controls enforce access: Object Privileges control SELECT on resources; ABAC policies match which rules apply to which user attributes; Row Filters restrict returned rows at query time; Column Masks redact values at the data layer.

Control LayerWhat It EnforcesWhere It Acts
Object PrivilegesSELECT (and other DML) access on specific Unity Catalog resourcesResource level
ABAC PoliciesWhich access rules apply, matched against user attributesPolicy evaluation
Row FiltersRestricts which rows are returned to the requesting userQuery execution time
Column MasksRedacts or transforms column values for the requesting userData layer / output
FIG. 04 Four layered Unity Catalog access controls applied at query time for every Genie Agent request — Databricks Engineering Blog

Unstructured data flows through Unity Catalog Volumes, allowing a single agent to answer across structured tables and document collections—PDFs, logs, unstructured files—without a separate RAG pipeline outside the governance boundary. Volume access controls mirror table query controls.

Most enterprise agent implementations grant the agent a service principal with wide permissions and filter outputs via system prompt. This makes the LLM the security perimeter. Databricks is blunt: telling an auditor that restricted data is protected by system prompt is not a defensible control. Models can be manipulated. Prompt injection is real.

DimensionTraditional (Service Principal + Prompt)Unity Catalog Credential Passthrough
Agent identityBroad-permission service principalEnd user's own identity
Security perimeterLLM / system promptData layer (Unity Catalog)
Access enforcementPrompt engineering & output filteringObject privileges, ABAC, row filters, column masks
Prompt injection riskHigh — model is the controlMitigated — data layer ignores prompt manipulation
AuditabilityHard to defend to auditorsGoverned by existing enterprise data controls
Threat modelLLM manipulation breaks the perimeterPerimeter survives model compromise
FIG. 05 Traditional service-principal agent pattern vs. Unity Catalog credential-passthrough pattern — Databricks Engineering Blog

The constraint is that this pattern requires Unity Catalog governance to be well-configured already. AIM and ABAC only enforce what identity and policy definitions exist. Architects shipping agents into Databricks environments with inconsistent object privileges or stale groups surface those gaps immediately. The agent faithfully enforces whatever access policies exist—correct or not. This pattern is not a governance shortcut; it is a governance multiplier.

Treat the security perimeter question as a first-class design decision, not a patch. If your agent's answer to "what can this user see?" lives in a system prompt, your threat model is wrong.