Before Copilot: audit SharePoint, Teams and OneDrive permissions

Find oversharing, links, guests, and oversized groups before Copilot, then remediate access in controlled stages based on your Microsoft 365 licenses.

01

Copilot does not create access—it exposes permission debt

Microsoft Copilot uses Microsoft Graph and honors permissions already granted to the user. It does not spontaneously grant access to a confidential file. The risk is an organization-wide site, an old sharing link, an oversized group, or sensitive material in a poorly governed workspace: Copilot can make authorized content much easier to find and summarize.

The predeployment objective is not to inspect every document. Identify the broadest access paths, assign accountable owners, and first remediate situations that combine sensitive data, wide exposure, and no defensible business need.

Microsoft states that prompts, responses, and retrieved data remain within the Microsoft 365 service boundary and are not used to train foundation models. Those protections do not repair an excessive SharePoint permission.

02

Understand where Teams data actually lives

Auditing only teams visible in the Teams admin center leaves gaps. Private and shared channel sites are separate site collections; a restriction on the team's main site does not automatically extend to them.

A shared-channel external participant can use B2B direct connect without a conventional guest account in your tenant. Include Entra cross-tenant settings, channel membership, and SharePoint permissions in the same review.

UsePrimary locationAudit focus
Standard Teams channelTeam SharePoint siteGroup members, visitors, links, and direct sharing
Private channelSeparate SharePoint siteChannel members and site-specific controls
Shared channelSeparate SharePoint siteInternal members, B2B direct connect, and extra sharing
File shared in chatSender's OneDriveLink, recipients, external access, and account lifecycle
SharePoint librarySharePoint siteGroups, inheritance, and unique permissions
03

1. Define scope and risk criteria

Use a simple prioritization matrix: sensitivity, access breadth, external users, owner quality, and activity. Avoid a universal threshold. An all-employee news site is expected; a contract library with the same exposure probably is not.

  • List sites, teams, private or shared channels, and OneDrive locations containing HR, financial, legal, executive, or customer data.
  • Identify the business owner, technical owner, expected audience, and retention requirement.
  • Classify exposure: whole organization, broad group, guests, anonymous link, direct sharing, or historical access.
  • Record recent activity without assuming that an inactive site has no value or retention obligation.
  • Define acceptable exceptions, their approver, and expiration date.
04

2. Build a read-only baseline inventory

SharePoint Online Management Shell provides a first view of sites. Run collection with a dedicated SharePoint Administrator role, protect the export, and treat it as sensitive. LastContentModifiedDate helps triage but proves neither actual use nor the absence of indirect access.

This collection does not calculate effective permission on every file. It highlights ownerless sites, permissive sharing capabilities, channel-site templates, and workspaces requiring review.

PowerShell — lightweight site inventory
Install-Module Microsoft.Online.SharePoint.PowerShell -Scope CurrentUser
Connect-SPOService -Url https://<tenant>-admin.sharepoint.com

Get-SPOSite -Limit All -IncludePersonalSite $false |
  Select-Object Url,Title,Owner,Template,SharingCapability,
    LastContentModifiedDate,StorageUsageCurrent |
  Export-Csv .\M365-Sites.csv -NoTypeInformation -Encoding UTF8

# TEAMCHANNEL#0 and TEAMCHANNEL#1 include separate sites
# used by private and shared channels.
PowerShell — external users on a priority site
$site = 'https://<tenant>.sharepoint.com/sites/Sensitive-Project'
Get-SPOExternalUser -SiteUrl $site -PageSize 50 |
  Select-Object DisplayName,Email,AcceptedAs,WhenCreated |
  Export-Csv .\Project-External.csv -NoTypeInformation -Encoding UTF8
05

3. Find the broadest access paths first

SharePoint Advanced Management Data Access Governance reports accelerate analysis of permissions, sharing links, and Everyone except external users. Capabilities vary by license: Microsoft 365 E5 exposes some reporting, while some remediation actions and snapshots require SharePoint Advanced Management or rights associated with Microsoft Copilot.

Without those capabilities, use the SharePoint admin center, site details, Microsoft 365 groups, and targeted owner reviews. The view is less centralized, but the priority order remains valid.

SignalRiskValidation
Everyone except external usersAlmost every internal accountConfirm the need with the owner
Anyone linkUnauthenticated link accessCheck content, use, and expiry
Organization linkInternal audience is too broadCompare with expected business audience
Guests or external usersAccess outlives the projectValidate sponsor and active relationship
Direct sharingBypasses expected group modelReview sensitive files and unique permissions
Ownerless groupNo accountable membership ownerAssign two responsible owners
06

4. Involve owners and apply sensitivity labels

IT understands access mechanisms; the business owner knows who should see the content. Give owners a clear list of groups, guests, links, and estimated audiences. Require a documented decision: retain, reduce, replace the sharing method, or remove.

Site Access Review can delegate selected reviews to owners but does not support OneDrive. Revoking access without a test can disrupt a process; approving an exception without an expiry creates permanent debt.

Container sensitivity labels can control privacy, external access, sharing, and unmanaged-device access. They do not automatically classify files inside the site: container and document protection remain separate layers.

07

5. Temporarily contain a high-risk site

Restricted Content Discovery can temporarily suppress a SharePoint site's content from organization-wide search and Copilot discovery. It does not change permissions, remove content from the index, or support OneDrive. Authorized users can still open the site directly.

Reserve it for high-risk sites during remediation. Broad use reduces search quality without fixing access. Restricted Access Control instead requires both normal permission and membership in a control group. Private and shared channel sites must be configured separately.

PowerShell — temporary containment
$site = 'https://<tenant>.sharepoint.com/sites/Sensitive-Project'
Set-SPOSite -Identity $site -RestrictContentOrgWideSearch $true

# Roll back after remediation and validation.
Set-SPOSite -Identity $site -RestrictContentOrgWideSearch $false
08

6. Remediate and deploy in rings

The pilot should represent several roles: executive, HR, finance, project manager, and general user. Use nonprivileged accounts and realistic prompts against fictitious names or controlled sensitive test data. Inspect citations and open sources as the same user.

Test denial as well. A user outside HR must not retrieve or open an HR document directly or through Copilot. After permission changes, allow for search and Copilot propagation.

RingScopeExit criteria
0 — governanceRoles, criteria, and exceptionsResponsibilities approved
1 — sensitive sitesHR, finance, legal, executiveBroad access justified or removed
2 — Copilot pilotSmall representative groupNo unexpected citations; denials validated
3 — wavesDepartments in sequenceReview complete and support ready
4 — operationsNew sites, guests, and linksRecurring reviews and expiring exceptions
09

Checklist before assigning Copilot licenses

  • Sensitive sites have a business owner and backup owner.
  • Private and shared channel sites are included in inventory.
  • Everyone except external users and organization links are justified.
  • Anonymous links, guests, and B2B direct connect participants were reviewed.
  • Ownerless groups and teams were remediated.
  • Unique permissions in sensitive libraries were examined.
  • Container and file labels were tested separately.
  • Temporary containment has an owner and removal date.
  • The pilot validates responses, citations, denials, and propagation.
  • Exceptions are documented for the next review.
10

Turn the assessment into ongoing governance

A one-time cleanup reduces initial risk, but links, groups, and sites continue to change. Integrate owner, guest, and sharing reviews into onboarding, offboarding, project closure, and classification changes. Also monitor agents and connectors that add other sources to Copilot.

This guide provides a focused method; it does not replace a full analysis of effective permissions, compliance, retention, and business processes. A structured assessment separates legitimate collaboration from accidental exposure without eliminating Copilot's value.