Copilot has no permissions of its own. It sees exactly what the signed-in user can already see — so security-group membership is the control. This traces six people against the same document, and shows exactly which gate stops each one.
The containment model
A document sits inside a library, inside a site. The site and library decide who can reach the file. What Copilot may read back is decided on the file itself — which is why two documents in the same folder, with identical permissions, can have opposite exposure.
Both files sit in the same folder and are governed by the same two groups. The only difference is the encrypted label on the left-hand file — and that single difference decides whether Copilot will read the contents back. Protection is a property of the file, never of the library that holds it.
Six users, one document
All six work at the bank. The gate each one fails determines both what they can do and what Copilot can do for them — and the last two show that identical permissions can still produce opposite outcomes.
| User | Gate 1 · Licence Copilot_User | Gate 2 · Site QC_Reader | Gate 3 · Library LoanFiles_Reader | Gate 4 · Extract CreditFiles_Extract | Result |
|---|---|---|---|---|---|
| User A Branch teller | ✗ not a member STOPPED HERE | never evaluated | never evaluated | never evaluated | cannot open the file |
| User B Marketing | ✓ member | ✗ not a member STOPPED HERE | never evaluated | never evaluated | cannot open the file |
| User C QC analyst | ✓ member | ✓ member | ✗ not a member STOPPED HERE | never evaluated | cannot open the file |
| User D Loan officer | ✓ member | ✓ member | ✓ member | ✗ not a member STOPPED HERE | opens file, Copilot blocked |
| User E Credit officer | ✓ member | ✓ member | ✓ member | ✓ member | Copilot extracts |
| User F same rights as D | ✓ member | ✓ member | ✓ member | NO GATE EXISTS file has no label | Copilot EXTRACTS |
Gates 1–3 decide whether the file is reachable. Fail any one and the user cannot open it — later gates never evaluated. Gate 4 is different: User D opens the document normally; only Copilot is refused. Users D and F have identical group membership. D is protected, F is not — because F's file was never labelled.
Each gate is a security-group membership. Users A, B and C never reach the file at all — once a gate stops them the remaining gates are never evaluated. User D reaches it and opens it, and only Copilot is refused. User E clears everything. User F has exactly the same group memberships as User D, yet Copilot extracts freely — because the file User F opened was never labelled, so the fourth gate does not exist for it.
The group does nothing on its own
Gate 4 only exists because the document carries an encrypted label. Remove the label and the gate disappears — along with any protection the group appeared to provide.
The label is the lock; the group is the key list. A key list without a lock protects nothing — and this is the single most common mistake when configuring Copilot restrictions.
Membership decides the outcome
| Security group | Controls | User A · Teller | User B · Credit officer |
|---|---|---|---|
| Copilot_User | Has Copilot at all | member | member |
| QC_Reader | Can reach the site | member | member |
| LoanFiles_Reader | Can reach the library | member | member |
| CreditFiles_Extract | EXTRACT right on encrypted content | not a member | member |
| Can open the document | Yes | Yes | |
| Copilot can extract from it | No | Yes |
What to actually do
- Apply the encrypted label Confidential-CreditFiles to the document or set it as the library default.
- In the label's encryption settings, grant VIEW + EXTRACT to CreditFiles_Extract only.
- Ensure the user is not in that group.
- Result: they keep normal access; Copilot returns nothing from the file.
- Add the user to Copilot_User so they have Copilot.
- Add them to QC_Reader for the site.
- Add them to LoanFiles_Reader if that library has its own permissions.
- Add them to CreditFiles_Extract for the EXTRACT right.
The blind spot: files that cannot be labelled
Sensitivity labels only attach to Office formats and PDF. A .csv, .txt, .xml or .zip cannot carry one — so gate 4 can never exist for it, and no DLP policy can withhold it either.
For unlabelable formats the fourth gate does not exist and cannot be created. Whether Copilot reads the file is decided entirely by whether the user can open it.
- Break inheritance on the individual file or its folder.
- Grant only the group that should hold it.
- Copilot cannot read what the user cannot open — this is the one free, file-level control.
- Save the
.csvas.xlsx. - It becomes labelable, so the encrypted label and gate 4 apply normally.
- Free, and usually the right answer for recurring exports — fix it at the source system.
For the CISO: where least privilege has to be strictest
| Content | Controls available | If permissions are wrong |
|---|---|---|
| Office & PDF .docx .xlsx .pptx .pdf | Permissions and encryption label — two independent controls | Contained. The label still withholds content from Copilot. |
| Everything else .csv .txt .xml .zip .tif | Permissions only — single point of failure | Unmitigated. Nothing else stands between the file and Copilot. |
.csv used to sit in a folder nobody browsed — technically exposed, practically invisible. A natural-language query now surfaces it on demand to anyone holding a licence. The permission did not change; its discoverability did. Copilot does not create misconfigurations, it converts latent ones into active ones.
This inverts the usual instinct. Teams protect the important-looking Office documents and leave the machine-generated extracts loose — yet the extracts are where a permissions error has no backstop, and in a bank they are frequently the most NPI-dense content in the tenant.
Control standard for content that cannot be labelled
- Inventory it. Identify unlabelable files in every Copilot-reachable site. You cannot restrict what you have not enumerated.
- Segregate it. Put extracts in dedicated libraries with broken inheritance, not mixed into general document libraries where they inherit broad site access.
- Grant narrowly. One purpose-built group per extract library, smallest possible membership. Never the site's default Members group.
- Fix it at the source. Have the originating system emit
.xlsxinstead of.csv. The file becomes labelable and defense in depth is restored — usually a report-configuration change, not a project. - Review it quarterly. Entra ID P2 access reviews are already licensed here. Point them at these groups first.
- Or keep it out. If an extract has no reason to live in SharePoint, move it somewhere Copilot does not index.
What does not control Copilot
Four things that are commonly assumed to restrict Copilot and do not.
- A label without encryption. Marking a file Internal or Confidential classifies it for reporting. It does not stop Copilot reading it. Only encryption with a withheld EXTRACT right does that.
- Labelling more files. Raising classification coverage improves posture reporting. It changes nothing about who can reach what.
- DLP policies in simulation mode. They alert; they do not block.
- Hiding a site from navigation. Copilot follows permissions, not menus. Unlinked does not mean unreachable.
Applies to Microsoft 365 Copilot in SharePoint and OneDrive. Group names shown are a recommended convention; substitute your own. Encryption behaviour verified in a production tenant, 2026-07-29.