Building enterprise AI agents comes down to three decisions you make while building, not after: where to build and who’s allowed to do so, how narrowly you scope the agent’s data access, and how every agent lands in the Agent 365 registry.
Who This Is For
CIOs, CTOs, and security leaders running Microsoft 365 who have Copilot agent pilots working and need a way to build and integrate more of them without losing control.
In Brief:
- Scoping an agent’s identity and data access while you build it costs far less than retrofitting controls after the agent reaches production. The build phase is where your governance either holds or breaks.
- Where you build matters less than what you’re connecting to. Agents carry consumption costs that automations and prompts don’t, so check what’s available natively before committing, then match the platform to the integration depth the workflow requires.
- A single registry covers what the agents you build and those you bring in. Copilot Studio agents register the moment you create them, and agents from outside come in through the Agent 365 software development kit (SDK) or registry sync.
Imagine this scenario: An analyst on your finance team builds an agent in Copilot Studio on a Tuesday. It reads from three SharePoint sites, calls two connectors, and works well enough that her manager asks for one just like it. So, the analyst and her team members start building. By Friday, they have four. But nobody has documented which systems they touch and, worse, which they shouldn’t.
This is the part of developing enterprise AI agents that catches teams off guard. According to Gartner, more than 40 percent of agentic AI projects will be canceled by 2027 due to escalating costs and unclear value. Both problems trace back to scope.
When no one knows how many agents are running or what they’re calling, consumption costs climb. Plus, an agent you can’t account for is one you can’t defend past the pilot. Scope is set the moment an agent gets credentials and data access, which is usually well before anyone documents what it pulls from.
The fix isn’t slowing down your builders, though. Instead, it’s recognizing that with enterprise AI agents, extensibility and governance are parts of the same process. Every choice you make while building an agent is also a governance choice, regardless of whether you treat it that way.
In this blog, we’ll walk through the three decisions that matter most:
- How to design agents around real work and decide who gets to build them
- How to connect business data without widening your attack surface
- Why an agent lands in the Agent 365 registry the moment it’s created (rather than when someone remembers to file it)
Decision 1: Who Builds Enterprise AI Agents and Where
Your pilot worked and now other teams want their own agents. The instinct is to pick a build tool and go, but you should start instead with the business problem, then the workflow. That sequence helps you determine what problem the agent solves and what systems it needs to reach, which in turn helps you decide whether to build a low-code or pro-code agent.
Here are two questions to consider before anyone opens a build tool:
1. Where Should You Build?
Unlike prompts and automations, agents boost consumption costs, and that math changes as requests multiply. Check what already exists before you commit to building. Microsoft ships agents that cover common scenarios in Microsoft 365, and if nothing there fits, the Agent Store has partner-built agents. When the answer is still a custom agent, you have options for where and how to do the work:
- Agent Builder in Microsoft 365 Copilot handles lighter, self-contained scenarios.
- Copilot Studio covers more than most teams expect. It provides a single, low-code studio to create agents with Microsoft Copilot Studio alongside the workflows that support business processes across your organization — most role-based use cases land here.
- Microsoft Foundry fits when you’re connecting multiple data sources, and the hundreds of available connectors will carry you.
- Fabric agents are helpful when a use case requires custom models or reaches outside your Microsoft environment.
2. Who Can Build?
Governance here works in two layers:
- Organizational: This is your broader AI governance conversation where roles, responsibilities, and accountability get defined.
- Tool-level: In Copilot Studio, you assign maker, admin, reviewer, and tester roles, with Power Platform carrying its own governance alongside it.
Seen that way, “restrict who can build” stops sounding like a lockdown and starts looking like ordinary role definition — the same as any other development platform. This won’t kill momentum because the governed path automatically runs from prototype to production. A Copilot Studio agent gets an Entra Agent ID the moment it’s created and appears immediately in the Agent 365 registry. Your makers keep their self-service speed, and everything they build appears in your inventory from Day One.
Naming who can build an agent is a governance control, not an IT formality.
Deciding who builds is the easier part. The harder question is identifying what the agent can see once it’s running.
Decision 2: Scope Data Access for Enterprise AI Agent Security
You’ve selected a platform and named your builders. Now the agent needs data, and that’s where risk comes in.
A finance agent that reads from one SharePoint library and one Dataverse table is a different risk than the same agent pointed at everything its builder has rights to. You already know how this plays out. Onboarding an agent means giving it an identity and scoping its access to only its role — the same as a new hire. The difference is that you’re governing a nonhuman identity, and its access is determined the moment you wire up connectors.
Most Microsoft Power Platform connectors run on-behalf-of authentication, which means the agent inherits its user’s permissions. A new employee doesn’t arrive with their manager’s access. An agent effectively does. If the user the agent runs as can reach an overshared SharePoint folder, so can the agent. Fix that oversharing before you wire the connectors, because after that point one person’s excess access becomes the agent’s.
What makes this governable is that the permissions become objects you can inspect. When a maker publishes a Copilot Studio agent, the platform attaches API permissions to the agent’s Entra Agent ID for every connector it uses. Your admins review those in the Microsoft Entra admin center, then target them with conditional access, just as you’d provide conditional access for a person. Audit logs record the action under the user’s name with agent context attached, so you keep the compliance trail.
The scopes are re-validated at runtime against data loss prevention and advanced connector policies, so a maker can’t configure their way around governance you’ve already set. Microsoft Purview and Microsoft Defender govern the data an agent may touch and identify risky behavior once it’s live. The decision about what it should reach at all happens here.
An agent’s data scope is a security decision made at build time, not a configuration detail discovered later. However, scoping an agent well only helps if you can find it later. That’s what the registry is for.
Decision 3: How Every Agent Gets Registered
An enterprise AI agent isn’t done when it goes to work. It’s done when the registry knows it exists, who owns it, what data it reaches, and what identity it runs under. For teams building and extending agents, registration belongs in your “definition of done” the same way a deployment manifest does for any business-critical application.
Consider Copilot Studio, where most of your makers will be working. A Copilot Studio agent registers automatically upon creation — not at publish — and its record is populated from the build itself: name, publisher, connectors used, environment, knowledge sources. Approval to make that agent available across the organization is a different gate, and it comes later.
How an agent lands in the registry depends on where it came from:
- Built on a Microsoft platform: Copilot Studio, Agent Builder, and Microsoft Foundry agents register with no developer effort.
- Built on an outside framework: The Agent 365 SDK provisions the identity and explicitly registers the agent, whether it runs on the Microsoft 365 Agents SDK, OpenAI’s SDK, LangChain, or custom code.
- Running on another cloud: Agents on Amazon Bedrock or Google Cloud come in through registry sync, currently in public preview.
All three terminate in the same registry under the same controls, which is why widening what you import and build doesn’t fragment your control plane.
However, not every agent needs the same rigor. A small, internal agent with a narrow data scope and low business impact doesn’t warrant what a customer-facing agent warrants; a complexity-and-impact scorecard is how you decide.
As Centric Consulting’s director of AI strategy, Joseph Ours, explains, “Governance is straightforward because the data and privacy issues revolve around the specific problem you solved.” Knowing when to right-size the process is part of the discipline, not a shortcut around it.
An agent that isn’t registered isn’t finished. Get these three decisions right, and the payoff shows up later when the fleet is bigger than any one person can track.
Build Time Is Decision Time
The team running four enterprise AI agents can easily follow what each has access to and who owns it, but the team running 40 can’t. The difference between an inventory you trust and one you’re reconstructing is akin to saying “yes” to the next request on one hand and freezing the pipeline on the other while someone figures out what’s already running.
None of this requires slowing your builders down. It requires deciding at build time what each agent is for, what it gets to see, and who answers for it. Done consistently, extending your agent estate stops being a governance risk and becomes, instead, a capability you can grow with intention.