Agentshield

Copilot Studio Security and Governance: Microsoft Copilot Studio Security Risks and Controls

Copilot Studio ships real governance controls, and a maker can weaken most of them in three clicks. The gap that matters is between what the platform configures and what an agent actually does at runtime.

OWASP LLM Top 10 Immutable audit trail Never trains on your data

Direct answer

Copilot Studio security rests on two layers that are easy to confuse. The first is configuration governance, and Microsoft covers it well: Power Platform data policies gate connectors, actions, HTTP requests and triggers, agents authenticate with Entra by default, maker audit logs flow to Microsoft Purview and Microsoft Sentinel, customer-managed keys are available, and Microsoft Agent 365 can give each agent an Entra identity governed by Conditional Access. The second layer is runtime behavior, and that is where the published incidents sit. CVE-2026-21520, disclosed as ShareLeak by Capsule Security and patched by Microsoft on January 15, 2026, was an indirect prompt injection scored CVSS 7.5: a payload typed into a SharePoint form field was concatenated with the agent system instructions, overrode them, and pushed customer data from connected SharePoint Lists to an attacker email address. Nothing in that chain required a misconfiguration. The practical answer is to treat the Copilot Studio configuration surface as necessary but not sufficient, and to constrain what each agent can reach and what irreversible actions it can take without a human.

Try it live

Watch Agentshield block an attack in real time.

Pick a scenario and drive the inspection lane yourself. No signup needed.

Threat Console
12,408 injections blocked this week

Run a request

Inspection lane

INSPECTING
untrusted input

Policy trace

High-risk action held for approval

Audit trail

The risk

Copilot Studio is a low-code product, which is the point and also the problem. The people building agents are business analysts, not security engineers, and every published agent inherits live connectors into SharePoint, Dataverse, Outlook and whatever line-of-business systems the maker had rights to. Security teams usually find out an agent exists after it is already answering customers. When someone asks which agents can read HR data, or which of them will email an external address, most tenants cannot produce the list.

How Agentshield handles it

Start inside the Microsoft stack, because most of the configuration controls you need are already there and switched on. Keep Authenticate with Microsoft as the authentication mode, keep End user credentials rather than Maker-provided credentials on connectors and flows, route makers into a controlled environment, and use Power Platform data policies to decide which connectors and HTTP capabilities agents may use at all. Then close the runtime gap. Agentshield sits on the action path in front of the tools and services an agent calls, inspects untrusted content before it becomes an instruction, enforces a per-agent allowlist of what each agent may call and with which scope, holds irreversible actions such as an outbound email or a record deletion for human approval, and writes every decision to an append-only record you control. That layer is stack-neutral, which matters the moment your agent estate stops being only Copilot Studio.

The controls

The controls that secure the Copilot Studio agents your makers publish, and the connectors and data they reach.

What are the Copilot Studio security risks?

They fall into four groups, and only one of them is a platform bug. The other three are consequences of putting agent-building in the hands of people who do not think about trust boundaries for a living.

RiskWhat it looks like in a real tenantWho owns the fix
Indirect prompt injection through content the agent readsA form field, a document, a list item or an email body carries instructions. The agent treats untrusted user input as trusted instruction and follows it. This is the class CVE-2026-21520 belongs toShared. Microsoft patches specific paths; the design pattern remains yours to constrain
Over-scoped connectorsA maker builds an agent with the connector permissions they personally hold. The agent inherits reach into SharePoint sites, Dataverse tables or mailboxes that nobody scoped for an automated callerYou. Power Platform data policies and environment strategy
Weakened secure defaultsAuthentication switched to No authentication, connectors flipped from End user credentials to Maker-provided credentials, or the agent shared with everyone in the organizationYou. Copilot Studio warns the maker; it does not stop the maker
Agent sprawl with no inventoryAgents are published across environments by dozens of makers. There is no single answer to which agents exist, who owns them, and what each one can reachYou. Purview audit logs, Copilot Hub, and Agent 365 if you have onboarded it
Framework-level code execution under the agentA vulnerability in the SDK the agent runs on turns a prompt into a command. Microsoft documented exactly this pattern in Semantic Kernel in May 2026Microsoft patches. You own version currency

The ordering matters. Teams tend to worry about the platform bug because it has a CVE number, and to under-worry about the second and third rows, which is where almost all of the real exposure lives. A patched injection path closes one door. A connector scoped to an entire SharePoint tenant leaves the building unlocked.

Copilot Studio security and governance: what Microsoft gives you natively

This part deserves credit rather than fear-selling. Microsoft documents a substantial control set for Copilot Studio, and the security and governance page on Microsoft Learn was last updated on August 8, 2026, so it reflects the current product rather than a 2024 snapshot. If you are running agents only inside Microsoft 365 and Power Platform, a well-configured tenant covers more than most buyers assume.

Native controlWhat it actually doesWhere it stops
Power Platform data policiesAdmins govern maker and user authentication, knowledge sources, actions, connectors and skills, HTTP requests, publication to channels, Application Insights, and triggersGoverns which capabilities may be used, not what the agent decides to do with an approved one
Automatic security scanWarns a maker before publishing when secure defaults are changedChecks three specific settings only: No authentication, Maker-provided credentials, and sharing with everyone in the organization
Real-time risk assessmentSurfaces continuously updated risk findings while a maker configures knowledge, tools and actions, so data exfiltration issues can be remediated before publishingDesign-time review, not a runtime decision on a live action
Audit logs in Purview and SentinelAdmins get maker audit logs in Microsoft Purview and can alert on agent activity through Microsoft SentinelMicrosoft notes Customer Lockbox does not cover this telemetry, and that some Agent 365 governance and audit events are also excluded
Microsoft Agent 365Central control plane. Copilot Studio agents can be represented as identities in Microsoft Entra and governed with Conditional Access, role-based and attribute-based access controls, and Entra network egress and ingress controlsA separate product to onboard, and Microsoft-stack agents only
Customer-managed keys and Customer LockboxEncryption keys under your control, and gated Microsoft access to customer dataMicrosoft states explicitly that the configured Lockbox does not cover all outbound data from Copilot Studio

Read the middle column and the right column together. The native controls are strong at deciding what a maker is allowed to wire up. They are thinner on what happens in the seconds after an agent reads a document containing instructions. That is the honest shape of the gap, and it is the same shape in every agent platform we have looked at, including n8n security and LangChain security.

What CVE-2026-21520 showed about Copilot Studio and prompt injection

Capsule Security researchers named it ShareLeak. The chain is worth walking because it contains no exotic step, and because the agent behaved exactly as designed at every stage.

An attacker submits an external SharePoint form and puts a payload in a free-text field, the Comments box in the published demonstration. The submission triggers a Copilot Studio agent, which concatenates that untrusted input with its own system instructions. The payload overrides the legitimate instructions. The agent, now following attacker text, reads connected SharePoint Lists and sends sensitive customer data to an attacker-controlled email address. Capsule reported it on November 24, 2025, Microsoft deployed a patch on January 15, 2026, and the finding was publicly disclosed on April 15, 2026. Microsoft assigned CVSS 7.5, classified it as information disclosure, and stated that the mitigation was carried out internally with no further action required from users.

Three things about that are worth holding onto.

The entry point was a form, not a prompt. Nobody chatted with the agent. The injection arrived through a normal business process that a company deliberately exposed to the public, which is what makes this pattern durable. Capsule found the same technique against Salesforce Agentforce through a lead form, where the vendor characterized it as configuration-specific and pointed at human-in-the-loop controls. The researchers pushed back that requiring manual approvals undermines the purpose of autonomous agents. Both positions are defensible, which tells you the industry has not settled this.

The exfiltration path was a sanctioned connector. The agent emailed data because emailing was something the agent was allowed to do. No permission was bypassed. If the agent had held no outbound email capability, or if outbound email to an external domain had required an approval, the injection would have succeeded and the exfiltration would not.

Patching the path does not retire the class. Microsoft closed this instance. The underlying condition, that a large language model cannot reliably distinguish data it was given from instructions it was given, is unchanged. That is why the durable control is not a better filter but a narrower blast radius. We cover the general case in prompt injection detection.

The same month tells a second story one layer down. In May 2026 Microsoft published research on remote code execution in AI agent frameworks, including CVE-2026-25592 in the Semantic Kernel .NET SDK, fixed in 1.71.0, where a file-write method had been accidentally marked with a KernelFunction attribute and was therefore advertised to the model as a callable tool. Microsoft wrote that prompt injection "draws a thin line between being just a content security problem and becoming a code execution primitive." A single prompt was enough. The lesson generalizes past Microsoft: whatever you expose to the model, the model may call.

Copilot Studio security best practices

In the order we would actually do them, and weighted toward the things that reduce blast radius rather than the things that produce a report.

1. Keep the three secure defaults that the security scan watches. Authentication mode stays Authenticate with Microsoft. Connectors and flows stay on End user credentials rather than Maker-provided credentials, so an agent inherits the caller identity instead of the maker service account. Agents are not shared with everyone in the organization unless someone senior has signed that off in writing. These are the only three settings the automatic scan warns on, which is a strong hint about which ones Microsoft has seen go wrong.

2. Decide connector policy before makers need it. Use Power Platform data policies to split connectors into business and non-business groups, and to govern HTTP requests and triggers explicitly. An agent that can make arbitrary HTTP calls has an exfiltration channel that no content filter will reliably close.

3. Route makers into a controlled environment. Default environment routing exists so that a new maker lands somewhere with a policy attached rather than in a shared tenant-wide space. Use it, and keep production agents in an environment with a named owner.

4. Treat every external-facing input as hostile. Any agent triggered by a form, an inbound email, a ticket, a scraped page or a shared document is processing text an attacker can author. That is the ShareLeak precondition. For these agents specifically, cut the tool list to the minimum and remove outbound send capability unless the agent genuinely needs it.

5. Put an approval gate on the irreversible actions. Sending mail outside the tenant, deleting or overwriting records, issuing refunds, changing permissions. The number of these per agent is usually small, and gating them costs a few seconds against an outcome you cannot undo. Our page on human in the loop AI agents covers how to pick the gate list without stalling the agent.

6. Build the inventory before you need it. Which agents exist, who owns each, what each can reach, and when it last acted. Purview maker audit logs and the Copilot Hub give you part of this natively, and Agent 365 gives you more if you have onboarded it. Whatever the source, someone should be able to answer those four questions in minutes.

7. Keep an audit record the agent cannot edit. After an incident the question is always what the agent did, in what order, and on whose authority. A record written by the same system that took the action is worth less than one written to a store that the action path cannot reach. See AI agent monitoring for what a usable action record contains.

Where a runtime control plane helps with Copilot Studio, and where it does not

We would rather you buy the right thing than buy ours. Copilot Studio is a case where a lot of what you need is already in your Microsoft license, so here is the honest split.

What you needDoes Agentshield help?The straight answer
Governing which connectors makers may useNoPower Platform data policies do this properly and they are already in your tenant. Use them
Giving each Copilot Studio agent an Entra identity with Conditional AccessNoThat is Microsoft Agent 365. If you are a Microsoft-only shop, it is the natural answer
Warning a maker before they publish a weakened agentNoThe automatic security scan already does this for the three settings that matter most
Blocking an injected instruction before the agent acts on itYesUntrusted content is inspected on the action path, not only scanned at design time
Holding an irreversible action for human approvalYesPer-action approval gates, with the agent state preserved so it resumes rather than restarts
One policy across Copilot Studio and non-Microsoft agentsYesThis is the real reason to add a layer. Most estates end up mixed, and Microsoft controls stop at the Microsoft boundary
An action record outside the platform that took the actionYesAppend-only, exportable, and not dependent on telemetry that Customer Lockbox excludes

If your entire agent estate is Copilot Studio and it will stay that way, configure the native controls properly and you have covered most of your exposure. Add a runtime layer when either of two things is true: agents are acting on content that people outside your company can author, or your estate has stopped being one vendor. The second condition arrives sooner than most teams plan for, usually the first time a developer ships something on OpenAI agents or Claude agents next to the Copilot Studio fleet.

How to secure Copilot Studio agents that reach outside Microsoft 365

The clean tenant story holds while everything an agent touches is a first-party Microsoft service under one identity model. It stops holding the moment an agent calls a custom connector into a billing system, an HTTP endpoint at a partner, or an MCP server someone in engineering stood up. At that point three things change.

The identity gets fuzzier. Inside Microsoft 365, End user credentials mean the agent acts as the person. Across a custom connector, it usually acts as a shared service principal or an API key, and the audit trail on the far side records one caller for every user. Give agents their own scoped credentials rather than a shared one, and keep them short-lived, which is the argument we make in full on AI agent identity.

The policy gets split. Power Platform data policies decide whether a connector may be used. They do not decide which record an agent may write on the other side of it, or how many times, or at what hour. Those decisions have to live somewhere on the call path.

The evidence gets scattered. Purview holds the maker and agent activity Microsoft can see. The far system holds its own log under a service account name. Reconstructing what happened means correlating two records that were never designed to be joined. A single action record covering every call an agent makes, whichever side of the tenant boundary it lands on, is the difference between a one-hour answer and a one-week one.

None of this argues against Copilot Studio. It is a good product for the job it does, and for a lot of internal agents the native controls are genuinely enough. It argues for being clear about where the tenant boundary is, and putting the enforcement point where the actions actually happen. If you want the general version of that argument rather than the Microsoft-specific one, it is on AI runtime security, and the vendor landscape around it is mapped on our AI agent security alternatives hub.

FAQ

Common questions about copilot studio security.

Is Copilot Studio secure?

Copilot Studio is secure by default and weakenable by a maker. Agents authenticate with Microsoft Entra by default, connectors use end user credentials by default, and agents are shared with nobody by default. Microsoft runs an automatic security scan that warns a maker when any of those three defaults is changed. The residual risk is runtime behavior, not configuration.

Is Copilot Studio safe for business data?

Yes, with a caveat worth understanding. Copilot Studio supports Power Platform data loss prevention policies, customer-managed encryption keys, Customer Lockbox, geographic data residency, and audit logs in Microsoft Purview and Microsoft Sentinel. Microsoft states explicitly that the configured Lockbox does not cover all outbound data from Copilot Studio, so read that exclusion list before assuming full coverage.

What are the Copilot Studio security risks?

Five, in the order they cause real damage: over-scoped connectors that give an agent more reach than intended, weakened secure defaults such as No authentication or maker-provided credentials, indirect prompt injection through content the agent reads, agent sprawl with no inventory of who owns what, and vulnerabilities in the frameworks underneath. Only the last is purely Microsoft to fix.

What is CVE-2026-21520?

An indirect prompt injection vulnerability in Microsoft Copilot Studio, scored CVSS 7.5 and classified as information disclosure. Capsule Security disclosed it as ShareLeak: a payload placed in a SharePoint form field was concatenated with the agent system instructions, overrode them, and caused the agent to send data from connected SharePoint Lists to an attacker email address. Microsoft patched it on January 15, 2026.

Does Copilot Studio prevent prompt injection?

Microsoft patches specific injection paths as they are found and runs a design-time risk assessment that flags potential data exfiltration configurations before publishing. Neither is a general defense against prompt injection, because no current system reliably separates data from instructions inside a model context. Reduce what an injected agent can do rather than relying on detection alone.

How do I secure Copilot Studio agents?

Keep the three defaults the security scan watches, set Power Platform data policies on connectors, HTTP requests and triggers, route makers into a controlled environment, cut the tool list on any agent that reads externally authored content, put approval gates on irreversible actions such as outbound email and record deletion, and keep an action record the agent cannot edit.

What is the difference between Copilot Studio security and Microsoft Agent 365?

Copilot Studio security controls live inside the authoring and publishing product: data policies, secure defaults, the automatic security scan, and audit logs. Microsoft Agent 365 is a separate control plane that represents agents as identities in Microsoft Entra so they can be governed with Conditional Access, role-based and attribute-based access control, and Entra network egress and ingress controls.

Does Copilot Studio have DLP?

Yes. Copilot Studio inherits Power Platform data loss prevention through data policies configured in the Power Platform admin center. Those policies govern maker and user authentication, knowledge sources, actions, connectors and skills, HTTP requests, publication to channels, Application Insights, and triggers. They control which capabilities an agent may use, not what it does with an approved one.

Can Copilot Studio agents leak data?

Yes, and the published example did not require a misconfiguration. In the ShareLeak chain the agent used a connector it was legitimately allowed to use, to send data it was legitimately allowed to read, to an address chosen by injected text. The durable control is narrowing what each agent may call and gating outbound actions, not filtering the input harder.

How do I audit what a Copilot Studio agent did?

Maker audit logs flow to Microsoft Purview and agent activity can be monitored and alerted on through Microsoft Sentinel. If you have onboarded Microsoft Agent 365 you also get centralized agent inventory and ownership context. Note Microsoft excludes Copilot Studio security audit telemetry and certain Agent 365 governance events from Customer Lockbox coverage.

Is Copilot Studio security enough on its own?

For an internal agent that reads only tenant data and cannot send anything outward, usually yes. For an agent that processes content written by people outside your company, or an estate that also runs agents built outside Microsoft, the native controls stop at the tenant boundary and the enforcement point needs to sit on the action path instead.

Secure your copilot studio security.