Skip to content

Commit ce29917

Browse files
authored
Refresh SharePoint Embedded auth page (SharePoint#10314)
* Replace List containers response from 401 Unauthorized to 403 Forbidden for unlicensed users * Fix acrolinx errors in SPE auth page * Update ms.date in SPE auth page
1 parent b8256a2 commit ce29917

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

docs/embedded/development/auth.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: SharePoint Embedded Authentication and Authorization
33
description: This article describes the authentication and authorization model for SharePoint Embedded applications.
4-
ms.date: 06/10/2025
4+
ms.date: 06/24/2025
55
ms.localizationpriority: high
66
---
77

@@ -15,8 +15,8 @@ Here are some key principles of SharePoint Embedded authentication and authoriza
1515

1616
- Applications interact with SharePoint Embedded via Microsoft Graph.
1717
- Applications need container type application permissions to access containers of that container type.
18-
- When using access on behalf of a user, applications can only access containers that the user is a member of.
19-
- When using access without a user, applications can access containers enabled by the container type application permissions they have been granted.
18+
- Applications can only access containers that the user is a member of when using access on behalf of a user.
19+
- Applications can access all containers enabled by their container type application permissions when using access without a user.
2020
- Applications use access on behalf of users whenever possible to enhance security and accountability
2121

2222
## Pre-Requisites
@@ -51,12 +51,12 @@ SharePoint Embedded operations [without a user](/graph/auth-v2-service) require
5151

5252
Currently, there are two types of operations with exceptional access patterns:
5353

54-
- Operations not exposed via Microsoft Graph
55-
- Operations involving searching SharePoint Embedded content
56-
- Operations that require a user license
54+
- [Operations not exposed via Microsoft Graph](#operations-not-exposed-via-microsoft-graph)
55+
- [Operations involving searching SharePoint Embedded content](#operations-involving-searching-sharepoint-embedded-content)
56+
- [Operations that require a user license](#operations-that-require-a-user-license)
5757

5858
> [!IMPORTANT]
59-
> Make sure you understand and consider these exceptional access patterns as they may have repercussions on how SharePoint Embedded content for your application may be accessed, both by your application and other applications.
59+
> Consider the repercussions of these exceptional access patterns on how your application and other applications can access SharePoint Embedded content in your container type.
6060
6161
#### Operations not exposed via Microsoft Graph
6262

@@ -75,15 +75,15 @@ To [register a container type](../getting-started/register-api-documentation.md)
7575
| Container.Selected | 19766c1b-905b-43af-8756-06526ab42875 | Application | In the context of SharePoint Embedded, enables container type registration on a consuming tenant. |
7676

7777
> [!NOTE]
78-
> Container type management on owning tenants and registration on consuming tenants will become Microsoft Graph operations soon, and this step will no longer be needed. Stay tuned.
78+
> Container type management on owning tenants and registration on consuming tenants will become Microsoft Graph operations soon, and this permission will no longer be needed. Stay tuned.
7979
80-
To use the [SharePoint Embedded agent](./declarative-agent/spe-da2.md) experience (in the Preview stage) in your application, you'll also need the `Container.Selected` permission on the `Office 365 SharePoint Online` resource. Note that, as mentioned earlier, this permission is also required to register a container type today, which means that your application must have been granted consent to it interact with SharePoint Embedded in consuming tenants.
80+
To use the [SharePoint Embedded agent](./declarative-agent/spe-da2.md) experience (in the Preview stage) in your application, you also need the `Container.Selected` permission on the `Office 365 SharePoint Online` resource.
8181

8282
#### Operations involving searching SharePoint Embedded content
8383

84-
This refers only to the search scenarios in [Search Content](./content-experiences/search-content.md), and not the enumeration scenarios.
84+
This section refers only to the search scenarios in [Search Content](./content-experiences/search-content.md), and not the enumeration scenarios.
8585

86-
To use [Microsoft Search](/microsoftsearch/overview-microsoft-search) on SharePoint Embedded content, you must request the Delegated [`Files.Read.All`](/graph/permissions-reference#filesreadall) Microsoft Graph permission on top of `FileStorageContainer.Selected`, normally used for SharePoint Embedded access. During the Preview stage of this feature, the `Files.Read.All` application permission will grant applications access to search capabilities on all SharePoint Embedded content.
86+
To use [Microsoft Search](/microsoftsearch/overview-microsoft-search) on SharePoint Embedded content, you must request the Delegated [`Files.Read.All`](/graph/permissions-reference#filesreadall) Microsoft Graph permission on top of `FileStorageContainer.Selected`, normally used for SharePoint Embedded access. During the Preview stage of this feature, the `Files.Read.All` application permission grants applications access to search capabilities on all SharePoint Embedded content.
8787

8888
> [!NOTE]
8989
> Microsoft Search support for SharePoint Embedded content is in Preview and is subject to change. The access requirements for Microsoft Search on SharePoint Embedded content will align with the SharePoint Embedded authorization model in the future. Stay tuned.
@@ -94,11 +94,11 @@ SharePoint Embedded is designed to work without the need for end users to have a
9494

9595
##### List containers
9696

97-
The [List containers](/graph/api/filestorage-list-containers?tabs=http) operation will return a `401 Unauthorized` response code if called on behalf of a user that does not have a OneDrive for Business site. There are plans to remove this dependency in the near future. This does not apply to the List containers operation when called without a user context (app-only mode).
97+
The [List containers](/graph/api/filestorage-list-containers?tabs=http) operation returns a `403 Forbidden` response code if called on behalf of a user that doesn't have a OneDrive. There are plans to remove this dependency soon. This dependency doesn't apply to the List containers operation when called without a user context (app-only mode).
9898

9999
##### Mention users in Office documents
100100

101-
The common [Office experience](./content-experiences/office-experience.md) includes reviewing documents and adding comments to those documents. For users to show up in the @mentions people picker, they'll need to have an Microsoft 365 license assigned to them.
101+
The common [Office experience](./content-experiences/office-experience.md) includes reviewing documents and adding comments to those documents. For users to show up in the @mentions people picker, they need to have a Microsoft 365 license assigned to them.
102102

103103
### Container type application permissions
104104

@@ -143,7 +143,7 @@ Any user accessing a container must be a member of the container. Membership to
143143

144144
Here are some actions you can take next:
145145

146-
1. Configure your SharePoint Embedded [application manifest](/entra/identity-platform/reference-app-manifest#requiredresourceaccess-attribute) (you may use [Entra PowerShell](/powershell/entra-powershell/manage-apps#assign-permissions-to-an-app) or the [Azure CLI](/cli/azure/ad/app/permission#az-ad-app-permission-add)) to request the required permissions:
146+
1. Configure your SharePoint Embedded [application manifest](/entra/identity-platform/reference-app-manifest#requiredresourceaccess-attribute) (you can use [Microsoft Entra PowerShell](/powershell/entra-powershell/manage-apps#assign-permissions-to-an-app) or the [Azure CLI](/cli/azure/ad/app/permission#az-ad-app-permission-add)) to request the required permissions:
147147

148148
- Microsoft Graph (resourceAppId: `00000003-0000-0000-c000-000000000000`)
149149
- `FileStorageContainer.Selected` (type: `Scope`, ID: `085ca537-6565-41c2-aca7-db852babc212`) to access containers on consuming tenants
@@ -153,11 +153,11 @@ Here are some actions you can take next:
153153
1. [Grant admin consent](/entra/identity-platform/v2-admin-consent) to your application on both owning and consuming tenants (which can be the same tenant).
154154

155155
> [!NOTE]
156-
> The `Container.Selected` application permission is hidden. This may cause issues with granting admin consent using the Enterprise apps pane in the Azure portal. Instead, [construct the admin consent URL](/entra/identity-platform/v2-admin-consent#request-the-permissions-from-a-directory-admin) and provide it to your Entra directory administrator. For example:
156+
> The `Container.Selected` application permission is hidden, which can cause issues with granting admin consent using the Enterprise apps pane in the Azure portal. Instead, [construct the admin consent URL](/entra/identity-platform/v2-admin-consent#request-the-permissions-from-a-directory-admin) and provide it to your Microsoft Entra directory administrator. For example:
157157
>
158158
> `https://login.microsoftonline.com/{tenant}/v2.0/adminconsent?client_id={client_id}`
159159
>
160-
> Make sure the Entra directory administrator [confirms a successful response](/entra/identity-platform/v2-admin-consent#successful-response).
160+
> Make sure the Microsoft Entra directory administrator [confirms a successful response](/entra/identity-platform/v2-admin-consent#successful-response).
161161
162162
1. [Create a new container type](../getting-started/containertypes.md) on the owning tenant.
163163
1. [Register a container type](../getting-started/register-api-documentation.md) on the consuming tenant.

0 commit comments

Comments
 (0)