SharePoint Permissions Best Practices for Secure Microsoft 365 Sites
Least privilege, group-based access, external sharing controls, audit methodology, and the top mistakes that create security liabilities — a definitive security-focused guide.
Least privilege, group-based access, external sharing controls, audit methodology, and the top mistakes that create security liabilities — a definitive security-focused guide.
SharePoint permissions are deceptively easy to get wrong. The platform makes it trivially simple to share content — which is by design — but that ease of sharing, without governance, creates the oversharing problems that result in data breaches, compliance failures, and Copilot AI surfacing documents to people who should never have seen them. This guide sets out the permission design principles, structural patterns, and audit approaches that prevent those problems.
The least privilege principle means granting users the minimum access required to do their job — no more. In SharePoint, this translates to concrete decisions at every level of the permission hierarchy:
Granting access to individual user accounts — rather than Azure AD groups or SharePoint groups — is the most common SharePoint permission anti-pattern. It creates three problems:
Best practice: For every SharePoint site, use three Azure AD groups: Site Owners, Site Members, and Site Visitors. Map these directly to the SharePoint Owners, Members, and Visitors groups. Manage all access by adding users to the Azure AD groups — never by adding individuals directly to SharePoint groups.
SharePoint's external sharing settings operate at three levels: tenant, site collection, and item/library. Each lower level can only be as permissive as the level above it — you cannot enable Anyone links for a site if the tenant setting disables them.
| Sharing setting | Who can access | Recommended use |
|---|---|---|
| Anyone (anonymous) | Any person with the link — no sign-in required; not tracked in audit logs as a named user | Avoid entirely for business data; acceptable for public-facing marketing assets only |
| New and existing guests | External users; new guests must verify identity before first access | Client collaboration sites, partner project sites with appropriate governance |
| Existing guests only | External users already in the Azure AD directory | IT-controlled guest access; new guests require an Azure AD invite from IT |
| Only people in your organisation | Internal M365 users only; no external access possible | Default setting for all internal sites; HR, Finance, Legal, Executive sites |
Set the tenant default to "New and existing guests" at most. Then disable external sharing at the site level for all internal sites (HR, Finance, Legal, IT, Executive), leaving it enabled only for sites with a legitimate collaboration need. Use SharePoint Advanced Management's Data Access Governance reports monthly to identify sites where sharing settings have drifted from the baseline.
📄 External sharing overview for SharePoint — learn.microsoft.comSites without a designated owner accumulate access grants that no one reviews. Every SharePoint site must have at least one named human owner (not a shared mailbox or service account) responsible for quarterly access reviews.
The default sharing link type — what appears when a user clicks Share — defaults to "Anyone with the link" in many tenants. Change the tenant default to "Specific people" or "People in your organisation" so the secure option is the path of least resistance.
If Anyone links are permitted for specific sites, configure a mandatory expiry (30 days is standard). Expired links require re-sharing — which creates a natural governance checkpoint.
Item-level unique permissions (broken inheritance on a single file or list item) are invisible in the site's permission summary, nearly impossible to audit at scale, and frequently forgotten. Use folder or library-level permissions instead, or create a separate site for genuinely restricted content.
At minimum, HR, Finance, Legal, and Executive sites should have their member lists reviewed every 90 days. Use SharePoint Advanced Management's Site Access Review feature to automate the request — owners receive an email with a list of current members and confirm or revoke each one.
Guest accounts in Azure AD persist until explicitly removed. An ex-client's employee with guest access to your SharePoint client site retains that access indefinitely unless removed. Build a process: when a client relationship ends, an offboarding checklist includes removing guest accounts.
Create three site classifications: Public (internal), Confidential, and Highly Confidential. Define the baseline sharing settings, guest access rules, and sensitivity label requirements for each. Apply the classification to every site at creation and enforce it via SharePoint Advanced Management policies.
The SharePoint Admin Centre's Active Sites report shows the external sharing status of every site. Review it monthly. Sites where external sharing is enabled that were not expected to have it are a governance failure signal.
Sensitivity labels can enforce site-level access policies that cannot be bypassed through the SharePoint UI — including disabling Anyone links for Confidential-labelled sites, enforcing download restrictions for Highly Confidential content, and preventing sharing with external users regardless of site-level settings.
Copilot respects SharePoint permissions exactly — if a user has access (even through a forgotten sharing link), Copilot will use that content in its responses. Run the oversharing audit before Copilot rollout, not after. See our SharePoint Copilot Readiness guide for the full methodology.
A permissions audit should answer three questions: Who has access to what? How did they get it? Is that access still appropriate?
Get-PnPListItem with permission expansion to find list items and folders with unique permissions — these are the blind spots in most permission reviewsAudit cadence: An annual SharePoint permissions audit is the minimum for any organisation. Quarterly audits are recommended for organisations in regulated industries or those deploying Microsoft 365 Copilot. Use SharePoint Advanced Management's automated access reviews to make quarterly reviews operationally feasible at scale.
OceanCloud conducts SharePoint permissions audits using SharePoint Advanced Management, PnP PowerShell, and Microsoft Purview — delivering a risk-scored findings report with a prioritised remediation plan. Typical engagement: 2–3 weeks.
Request a Permissions Audit