Product
Product11 min readBy The Data Workers Team

You're on Microsoft Entra: Entra Decides Who People and Agents Are and What They Can Reach. Data Workers Makes Your Warehouse Match

Running Entra ID, ID Governance and Agent ID? Keep Entra deciding who people and agents are. Data Workers checks that warehouse grants match those decisions and proposes each fix, behind approvals.

Your identity team runs Microsoft Entra. Entra ID holds every user, group, app and service principal, fed by Workday or SuccessFactors. Conditional Access, Microsoft's Zero Trust policy engine, decides each sign-in, and in preview it can target agents too. Entra ID Governance runs access packages with automatic assignment rules, time-limited assignments, access reviews and lifecycle workflows. Entra Agent ID, generally available since April, gives agents identities of their own, and every Copilot Studio agent gets one with its creator as sponsor. The Microsoft MCP Server for Enterprise, in preview, answers directory questions in plain language. Entra decides who people and agents are and what they can reach. Data Workers makes sure your warehouse access matches those decisions: it reads the identities from Entra, diffs the live grants against what you intended, traces what the data feeds, and proposes each fix to the person who owns it, behind approvals.

The two meet every day, because an Entra group is only half of an access decision. The other half is the Unity Catalog grant on the other side of the sync.

Key takeaways

  • •Entra keeps its job. Identity, sign-in, Conditional Access, access packages, access reviews and Agent ID stay with your identity team.
  • •Data Workers checks the warehouse against Entra. It reads users, groups and app role assignments from Entra ID natively, reads the live Unity Catalog grants and diffs them against the intended set, so a permission error lands with the right owner: the data owner when the grants drifted, the identity owner when they held.
  • •Every grant is dry-run first. Effective privileges after inheritance, policy conflicts and a least-privilege recommendation with an expiry, before anyone approves.
  • •Fixes go to owners, behind approvals. Unity Catalog grants and revokes are applied after a named person approves; grants on other platforms are drafted for their owners; Entra changes stay with the identity team.
  • •Your MCP endpoint signs people in through Entra. Data Workers verifies Entra's tokens through JWKS and issues none of its own.
  • •Start with a pilot on one domain, read-only first, and climb from L0 manual toward L4 autonomous.

Microsoft Entra is the source of who. Data Workers checks the warehouse against it.

Entra answers who someone is, which groups they hold and whether this sign-in is allowed. Data Workers answers whether the warehouse grants still match what the team intended, and what has to change, by whom.

Here is a Monday at a home-goods retailer. The data platform runs on Azure Databricks with automatic identity management, so Unity Catalog grants point at Entra groups. Merchandising analysts read merch.gold through the Entra group sg-dbx-merch-analytics, which comes from the access package "Merch Analytics: Databricks" with an automatic assignment rule on department. The merch catalog also holds merch.crm.loyalty_members, which the data team tagged as personal data in Unity Catalog. Power BI replenishment reports query merch.gold with the analysts' own sign-in. The platform team keeps the intended grant set in Data Workers. This is an illustrative example.

TimeSystemWhat happens
Fri 18:00WorkdayHR publishes a reorg: the 140-person Merchandising Analytics team moves under Commercial Finance, effective Saturday
Sat 02:10Microsoft Entra IDInbound provisioning from Workday updates department for the 140 users
02:40Entra ID GovernanceAutomatic assignment does exactly what its rules say. The merch package's rule no longer matches, so the 140 assignments are removed and the users leave sg-dbx-merch-analytics. The Commercial Finance package assigns them, and its group sg-dbx-comfin
Mon 07:05Azure DatabricksThe first analysts sign in. Their group memberships refresh from Entra, and every query on merch.gold returns a permission error
07:10Power BIThe replenishment reports fail for the whole team. The weekly buy meeting is at 10:00
07:20TeamsTwenty-three messages in the merch data channel. The platform engineer asks Data Workers in Spellbook why the merch team lost merch.gold
07:27Data WorkersIt reads the live Unity Catalog grants on merch and diffs them against the intended set: in sync, nothing on the Databricks side changed. It reads the Entra groups: sg-dbx-merch-analytics and sg-dbx-comfin both exist, and the description of sg-dbx-comfin names the Commercial Finance access package. Its finding: the grants held, so the change sits in who is in the groups, for the identity owner to confirm
07:30TeamsA card posts to the channel with the evidence and two named owners: the identity owner for the access packages and the merch data owner for merch.gold
07:45Entra ID GovernanceThe identity owner checks the merch package's assignment history: 140 removals by policy, Saturday 02:40. Entra worked as designed; the reorg simply wasn't in the warehouse's plan
07:50SpellbookThe platform engineer's quick fix is SELECT on the whole merch catalog for sg-dbx-comfin. The governance lead, reviewing it, points out that the catalog also holds the tagged loyalty_members table. Data Workers proposes the scoped grant instead: USE CATALOG on merch, USE SCHEMA and SELECT on merch.gold. It dry-runs it (effective privileges after inheritance, no policy conflicts) and recommends a 90-day expiry for the data owner to renew or revoke
08:05Spellbook and emailOne change set goes to three owners: for the data owner, the scoped Unity Catalog grant; for the platform owner, an update to the intended grant set; for the identity owner, a proposal to add a quarterly access review of sg-dbx-comfin in Entra ID Governance
08:20SpellbookThe data owner approves the scoped grant
08:21Azure DatabricksData Workers applies the grant in Unity Catalog and re-reads the grants. They match the updated intended set
08:30Entra ID GovernanceThe identity owner schedules the access review in Entra
08:40SpellbookAnalysts sign in again, memberships refresh, and the reports load. Data Workers writes the receipt: the trigger, the grants before and after, the Entra groups read, the dry run, the approver, the expiry and the undo path. The identity team links it to the reorg change record
Incident timeline across the stack: what Microsoft Entra, your team and Data Workers each do, step by step

Nobody did anything wrong. Workday, Entra and Databricks each did their job. What no system held was the link between an HR reorg and a warehouse grant: the Commercial Finance group existed, but nobody had decided what it should read. The grant diff made the fix a decision for the data owner, not a hunt through Databricks, and the approval step gave the governance lead the moment to keep loyalty data out of the quick fix. The team made the buy meeting with an hour to spare.

JobWhat Microsoft Entra doesWhat Data Workers does
Who someone isHolds users, groups, apps and agent identities, fed by the HR systemReads users, groups and app role assignments from Entra ID
Who gets accessAccess packages with approvals, automatic assignment rules and expiryDiffs the live Unity Catalog grants against the intended set and names the gap
Each sign-inConditional Access decides on user, group, agent, device, location and riskLeaves every sign-in decision to Entra
RecertificationAccess reviews of groups, apps, roles and package assignmentsProposes a review for the identity owner when a grant needs one, with the evidence
AgentsAgent ID gives each agent an identity and a sponsor; lifecycle workflows move sponsorshipRuns its own agents behind approvals, autonomy levels per domain and receipts
The grantEnds at the group; the platform owner grants the group in the warehouseDry-runs the grant, applies Unity Catalog grants after approval and drafts it elsewhere
The proofAudit logs of sign-ins, assignments and reviewsA receipt per change: trigger, evidence, approver, before and after, undo path

Why doesn't Microsoft Entra just do this itself?

Because Entra's job is identity for every app in the company, and its design is right for that job. An access package can carry a group, an app role or a SharePoint site; it ends at the group. What the group can read inside Azure Databricks, Snowflake or Fabric is decided in those platforms by their owners. The Microsoft MCP Server for Enterprise is read-only by design and answers directory questions. The Conditional Access Optimization Agent suggests Conditional Access policies and applies the ones an admin accepts. Agent ID governs who an agent is and who sponsors it. Each acts inside Entra's domain, across thousands of apps, as an identity provider should.

Knowing that sg-dbx-comfin holds no grant on merch.gold, and what the intended grant set says it should hold, is data-platform knowledge. Acting on it means changing grants in a platform the identity team doesn't own, with a data owner's approval, a dry run and an undo path, and liability for data an identity provider was never designed to see. Data Workers is the product on that side of the line, and every Entra change goes back to the identity owner.

Every tool owns a slice. Data Workers covers the whole lifecycle

Entra owns its slice: identity, meaning who people and agents are, how they sign in and what they can reach. Each point tool adds another console, contract and handoff. Data Workers covers the whole lifecycle with one context, one approval flow and one audit trail, and builds on the identities Entra already governs.

Spider chart of ten jobs a data team does: Data Workers covers the whole list, Microsoft Entra goes deep on its own area
StageData WorkersMicrosoft EntraWhy we scored it this way
Catalog & Context94Entra holds the directory: users, groups, apps, agent identities and their attributes. Data Workers joins tables, lineage, runs, owners and usage in one context graph.
Analytics & Insights81Entra reports on sign-ins and identities; the MCP Server for Enterprise answers directory questions in plain language. Data Workers answers questions about the data itself from governed context.
Data Quality81Entra does not judge whether data is right. Data Workers checks nulls and keys after runs, holds row-count baselines and takes failures to the cause.
Observability & Incidents8.53Sign-in logs, ID Protection and risk-based Conditional Access catch identity incidents. Data Workers detects, diagnoses, fixes and verifies data incidents across systems.
Pipelines & Ingestion8.51Entra authenticates the identities pipelines run as; it does not run them. Data Workers queues reruns through your orchestrator and reviews pipeline changes before they merge.
Schema & Migration81Schemas are outside Entra's job. Data Workers reviews schema changes, assesses impact and plans migrations in approved waves.
Governance & Access8.59Entra's home stage: groups, access packages, automatic assignment, access reviews and lifecycle workflows for people and agents. Data Workers diffs warehouse grants against the intended set and applies Unity Catalog grants after approval.
Security & Privacy88.5Conditional Access, ID Protection, Agent ID and passkeys secure every sign-in. Data Workers reviews changes for new personal-data columns and proposes masking for its owner.
Cost / FinOps81Entra governs licenses, not data spend. Data Workers traces Snowflake credits to the dbt model behind them through query tags and reads AWS Cost Explorer.
MLOps & Models7.52Agent ID gives agents an identity, a sponsor and policy. Data Workers keeps the training and feature data under models healthy.

How Microsoft Entra and Data Workers work together

Your people stay in Claude, Copilot Studio or GitHub Copilot, Teams and Power BI. Spellbook Data Catalog (in preview) is where the data team looks: each finding, grant, dry run, approver and rollback; approval requests arrive in Slack or email, finding cards in Teams. Underneath, Data Context Wizard keeps one governed context graph, the Data-Agents Swarm (20+ specialist agents) does the work, and the Autonomous Data-Conductor runs each fix behind per-domain guardrails.

How Data Workers fits with Microsoft Entra: your coding agent on top, Data Workers in the middle, your estate underneath

What Data Workers reads from Entra. With an app registration your identity team creates, Data Workers reads users (including whether the account is enabled), groups with their descriptions and each user's app role assignments through Microsoft Graph, using a client-credentials token. Access packages, group membership and review decisions stay in Entra; the identity owner brings them in when an investigation needs them, as in the incident above. Data Workers never writes to Entra: group changes, package rules and access reviews go to the identity owner as proposals.

What Data Workers reads and changes in the warehouse. It reads the live Unity Catalog grants and diffs them against the intended set your platform team keeps, with conflicts proposed, never overwritten. Before any grant, it dry-runs the effective privileges after inheritance and policy conflicts, and recommends least privilege with an expiry. Unity Catalog grants and revokes are applied after a named owner approves; grants on Snowflake and other platforms are drafted for their owners to run. The expiry goes into the access ledger for the owner to renew or revoke. Lineage comes from trace_cross_platform_lineage, table context from explain_table, policy checks from check_policy and audit evidence from generate_audit_report. It also reads Azure Data Factory runs, the dbt manifest and GitHub pull requests natively, among 50+ connectors; Power BI connects over its API today. Fabric and Purview have their own guides: Data Workers on Microsoft Fabric and You're on Microsoft Purview.

Data Workers' own MCP servers sign people in through Entra. For a shared remote endpoint, Entra is the authorization server. Your identity team registers an app for the endpoint in Entra, and the endpoint is configured with your tenant's JWKS URL (https://login.microsoftonline.com/<tenant-id>/discovery/v2.0/keys), the expected issuer and the audience. Data Workers verifies each Entra access token's signature against those keys, checks issuer and audience, and takes the tenant from a claim in the verified token, such as Entra's tid, never from a header. Conditional Access applies as for any Entra app. Data Workers issues no tokens and registers no clients; an API key is the option for service use. Spellbook approvers sign in through Entra too.

The Microsoft MCP Server for Enterprise, side by side. Data Workers' agents don't call it, but your team's MCP client can hold both: ask Microsoft's server which groups a user belongs to, then ask Data Workers what those groups can read in Unity Catalog.

Setup today. Data Workers' agents come from the open-source repository: clone it and add start-agent.sh entries to your client config, as the client setup docs show.

// Example: .mcp.json for Claude Code
{
  "mcpServers": {
    "dw-governance": {
      "command": "/path/to/dataworkers-claw-community/start-agent.sh",
      "args": ["dw-governance"]
    },
    "dw-context-catalog": {
      "command": "/path/to/dataworkers-claw-community/start-agent.sh",
      "args": ["dw-context-catalog"]
    },
    "dw-connectors": {
      "command": "/path/to/dataworkers-claw-community/start-agent.sh",
      "args": ["dw-connectors"]
    }
  }
}

List the tools with your client's own command (/mcp in Claude Code), then ask "what feeds merch.gold, and which policies apply to it?"

One request, L0 to L4. The autonomy ladder is set per domain, so Merchandising can sit at a different level from Finance.

The autonomy ladder: L0 manual, L1 observe, L2 propose, L3 act reversibly, L4 autonomous
  • •L0 manual. Engineers chase permission errors by hand, after the complaints arrive.
  • •L1 observe. Data Workers reports each grant mismatch with its owners, and logs what each action would have needed.
  • •L2 propose. It drafts the scoped grant, the intended-set update and the identity owner's proposals; owners approve before anything runs.
  • •L3 act reversibly. For proven change classes, such as a revoke the owner pre-approved as a class, it acts, re-reads and records, with the undo ready.
  • •L4 autonomous. For a scoped, trusted class in one domain, it runs the loop end to end and posts the receipt. Entra changes still go to the identity owner, and masking always needs a person.

What changes for your team

Six jobs that run on autopilot with Data Workers next to Microsoft Entra, with a concrete example of each

Identity programs lose time at the seam with the warehouse. With Data Workers, these jobs run on autopilot at the level you set.

  • •Access. Grants diffed against the intended set after each identity change; every gap has an owner.
  • •Incidents. A permission error arrives traced to the grants or the groups, owners named.
  • •Data quality. Nulls and keys checked after each run, row counts held to baselines.
  • •Audits. Each grant links the request, dry run, approver, expiry and undo path.
  • •Cloud spend. Snowflake credits traced to the dbt model through query tags.
  • •Migrations. Each wave planned with its parity checks; the owner signs off.

The data team stops learning about reorgs from permission errors. The CISO guide covers the leader's side.

Keep Microsoft Entra, or consolidate?

Keep Microsoft Entra if you love it; Data Workers works with it from day one. Many teams consolidate once Data Workers runs that slice too.

For Entra, keeping it is the norm: it is the identity provider for Microsoft 365, Azure and every federated app. What teams consolidate is the glue: group-to-grant spreadsheets, diff scripts and the ticket queue between identity and data owners. Building it yourself? Calling an MCP server is the easy part; approvals, dry runs, rollback and receipts are the work. See also MCP server security and auth, AI agents and data access governance risks and audit trail requirements for data agents.

The case for your CFO

The outcome: identity changes as fast as the business reorganizes, and access to data follows without a Monday of errors or a quick fix that over-shares. Every warehouse grant matches a decision someone made, and you can prove it.

The risk story is plain. Data Workers reads Entra and changes nothing in it. It never applies a masking policy. Unity Catalog grants happen only after a named approver says yes, each one dry-run first, and each change leaves a receipt with the undo path. Unanswered requests expire and escalate; they never auto-grant. No agent can promote its own work. An org-wide stop halts all autonomous dispatch, and the admin kill switch takes two people. The agents run in your infrastructure; your data stays in your systems, and the hosted Conductor sees workflow metadata only. Zero migration.

Why now: Entra governs agents as well as people and assigns access on rules, so access changes multiply while the warehouse side is checked by hand. The first win is one domain, read-only, with a report of every grant that doesn't match the intended set and its owners. What stays the same: your Entra tenant, policies, packages and reviews. The ROI guide has the numbers, and the pilot path below.

The sentence to repeat upstairs: "Entra decides who can reach what; Data Workers makes sure the warehouse agrees, and every grant comes with an approval and a receipt."

Getting started

Start with a pilot. Pick the domain where identity changes hurt most, connect Data Workers read-only to Entra ID and that domain's Unity Catalog grants, record the intended grant set, and let it report every mismatch with its owners before turning on the first approved grant class. The pilot path and plans are on the pricing page, and the pilot is credited in full against the first year.

FAQ

Does Data Workers connect to Microsoft Entra natively? Yes, as a read: users, groups and app role assignments through Microsoft Graph, with an app registration your identity team controls. It writes nothing to Entra; changes go to the identity owner as proposals.

Does Data Workers sync Entra groups into Databricks or Snowflake? No. Azure Databricks automatic identity management or your SCIM setup syncs identities; Entra stays the source of record. Data Workers checks the result: it diffs the Unity Catalog grants those groups hold against the intended set, dry-runs any change and applies it after an owner approves.

How does this fit with Entra Agent ID? Agent ID gives agents an identity and a sponsor in your tenant. Data Workers reaches Microsoft Graph through an app registration your identity team creates and reaches Databricks with credentials your team issues, so both sit under the app and workload identity governance you already run in Entra. Inside Data Workers, every agent action runs behind approvals, per-domain autonomy levels and receipts.

Does Data Workers run our access reviews? No. Access reviews stay in Entra ID Governance. Data Workers proposes a review to the identity owner when a grant needs one, and its receipts give reviewers each grant's history.

Can we use the Microsoft MCP Server for Enterprise with Data Workers? Yes, side by side in your own MCP client. Microsoft's server, in preview and read-only, answers directory questions; Data Workers answers what those identities can reach in the warehouse and what the data feeds. Data Workers' agents don't call Microsoft's server.

Where does our data go? The agents run in your infrastructure and hold the credentials. Your data stays in your systems; the hosted Conductor sees workflow metadata only, never rows, credentials or model keys.

Sources

  • •Microsoft Learn, Microsoft Entra releases and announcements (Agent ID platform GA listed under April 2026; Agent ID sponsorship lifecycle with Lifecycle Workflows GA, May 2026; extended Conditional Access protections for agents' user accounts, public preview, June 2026; Agent Registry consolidation into Microsoft Agent 365, plan for change, March 2026), https://learn.microsoft.com/en-us/entra/fundamentals/whats-new (checked Oct 3, 2026)
  • •Microsoft Learn, What are agent identities?, https://learn.microsoft.com/en-us/entra/agent-id/what-are-agent-identities (checked Oct 3, 2026)
  • •Microsoft Learn, Microsoft Entra Conditional Access: Zero Trust policy engine, https://learn.microsoft.com/en-us/entra/identity/conditional-access/overview (checked Oct 3, 2026)
  • •Microsoft Learn, What are access reviews?, https://learn.microsoft.com/en-us/entra/id-governance/access-reviews-overview, and Create an access review of groups and applications, https://learn.microsoft.com/en-us/entra/id-governance/create-access-review (checked Oct 3, 2026)
  • •Microsoft Learn, What is entitlement management?, https://learn.microsoft.com/en-us/entra/id-governance/entitlement-management-overview (checked Oct 3, 2026)
  • •Microsoft Learn, Configure an automatic assignment policy for an access package, https://learn.microsoft.com/en-us/entra/id-governance/entitlement-management-access-package-auto-assignment-policy (checked Oct 3, 2026)
  • •Microsoft Learn, Configure Workday inbound provisioning in Microsoft Entra ID, https://learn.microsoft.com/en-us/entra/identity/saas-apps/workday-inbound-cloud-only-tutorial (checked Oct 3, 2026)
  • •Microsoft Learn, Overview of Microsoft MCP Server for Enterprise (preview, read-only), https://learn.microsoft.com/en-us/graph/mcp-server/overview (checked Oct 3, 2026)
  • •Microsoft Learn, Automatic identity management, Azure Databricks, https://learn.microsoft.com/en-us/azure/databricks/admin/users-groups/automatic-identity-management (checked Oct 3, 2026)