Authentification et autorisation SharePoint Embedded
Pour utiliser SharePoint Embedded, votre application doit utiliser Microsoft Graph. En savoir plus sur l’authentification et l’autorisation Microsoft Graph. En savoir plus sur l’architecture SharePoint Embedded.
Vue d’ensemble
Voici quelques principes clés avec l’authentification et l’autorisation SharePoint Embedded :
- Les applications interagissent avec SharePoint Embedded via Microsoft Graph.
- Les applications ont besoin d’autorisations d’application de type conteneur pour accéder aux conteneurs de ce type de conteneur.
- Lorsque vous utilisez l’accès pour le compte d’un utilisateur, les applications peuvent uniquement accéder aux conteneurs dont l’utilisateur est membre.
- Lorsque vous utilisez l’accès sans utilisateur, les applications peuvent accéder aux conteneurs activés par les autorisations d’application de type de conteneur qui leur ont été accordées.
- Les applications utilisent l’accès au nom des utilisateurs dans la mesure du possible pour améliorer la sécurité et l’audibilité
Conditions préalables
- Une inscription d’application Microsoft Entra ID. Consultez Inscrire une application.
- Votre locataire Microsoft Entra ID dispose d’un abonnement Microsoft 365
Autorisation
Les opérations SharePoint Embedded sont exposées via Microsoft Graph. SharePoint Embedded prend en charge l’accès pour le compte d’un utilisateur et l’accès sans utilisateur.
Importante
Les autorisations Microsoft Graph accordées à votre application lui permettent d’appeler des points de terminaison SharePoint Embedded. Toutefois, votre application doit être autorisée à accéder à un type de conteneur avant d’accéder aux conteneurs de ce type.
Accès au nom d’un utilisateur
Les opérations SharePoint Embedded pour le compte d’un utilisateur nécessitent que les applications reçoivent le consentement pour l’autorisation déléguée Microsoft Graph FileStorageContainer.Selected
. Cette autorisation nécessite le consentement de l’administrateur sur le locataire consommateur avant qu’un utilisateur du locataire puisse y donner son consentement.
En plus de recevoir le consentement de votre application pour FileStorageContainer.Selected
sur un locataire consommateur, l’utilisateur dont elle agit pour le compte doit disposer d’autorisations de conteneur. Les autorisations effectives dont dispose l’application sont l’intersection des autorisations d’application et des autorisations utilisateur lorsqu’elle agit pour le compte d’un utilisateur.
Importante
L’utilisation de SharePoint Embedded pour le compte d’un utilisateur est l’approche recommandée. Ce type d’accès améliore la sécurité de votre application. Il améliore également l’auditabilité des actions effectuées par votre application.
Accès sans utilisateur
Les opérations SharePoint Embedded sans utilisateur nécessitent que les applications reçoivent le consentement pour l’autorisation d’application Microsoft Graph FileStorageContainer.Selected
. Cette autorisation nécessite le consentement de l’administrateur sur le locataire consommateur.
Remarque
Un administrateur du locataire consommateur doit donner son consentement à la demande d’autorisations de votre application. Apprenez-en davantage ici.
Modèles d’accès exceptionnels
Actuellement, il existe deux types d’opérations qui ne sont pas accessibles via Microsoft Graph :
- Gestion des types de conteneur sur les locataires propriétaires, qui sont effectuées via des applets de commande PowerShell.
- Inscription du type de conteneur sur les locataires consommateurs, exposée via l’API REST SharePoint v2.
Pour effectuer des opérations de gestion de type de conteneur , vous devez être administrateur SharePoint Embedded ou administrateur général.
Pour inscrire un type de conteneur, vous devez demander l’autorisation Container.Selected
sur la Office 365 SharePoint Online
ressource.
Nom de l’étendue | ID d’étendue | Type | Opération |
---|---|---|---|
Container.Selected | 19766c1b-905b-43af-8756-06526ab42875 | Application | Dans le contexte de SharePoint Embedded, active l’inscription de type de conteneur sur un locataire consommateur. |
Remarque
La gestion des types de conteneurs sur les locataires propriétaires et l’inscription sur les locataires consommateurs deviendront bientôt des opérations Microsoft Graph et cette étape ne sera plus nécessaire. Restez à l’écoute.
Autorisations d’application de type de conteneur
Les applications SharePoint Embedded doivent se voir accorder des autorisations d’application de type conteneur par l’application propriétaire avant de pouvoir accéder aux conteneurs du type de conteneur donné. Les autorisations d’application de type de conteneur sont accordées aux applications via l’inscription du type de conteneur.
Autorisation | Description |
---|---|
Aucun | N’a aucune autorisation sur les conteneurs ou le contenu de ce type de conteneur. |
ReadContent | Peut lire le contenu des conteneurs de ce type de conteneur. |
WriteContent | Peut écrire du contenu dans des conteneurs pour ce type de conteneur. Cela ne peut pas être accordé sans l’autorisation ReadContent. |
Créer | Peut créer des conteneurs de ce type de conteneur. |
Supprimer | Peut supprimer des conteneurs de ce type de conteneur. |
Lire | Peut lire les métadonnées des conteneurs de ce type de conteneur. |
Écrire | Peut mettre à jour les métadonnées des conteneurs de ce type de conteneur. |
EnumeratePermissions | Peut énumérer les membres d’un conteneur et leurs rôles pour les conteneurs de ce type de conteneur. |
AddPermissions | Peut ajouter des membres au conteneur pour les conteneurs de ce type de conteneur. |
UpdatePermissions | Peut mettre à jour (modifier les rôles de) les appartenances existantes dans le conteneur pour les conteneurs de ce type de conteneur. |
DeletePermissions | Peut supprimer d’autres membres (mais pas eux-mêmes) du conteneur pour les conteneurs de ce type de conteneur. |
DeleteOwnPermissions | Peut supprimer sa propre appartenance du conteneur pour les conteneurs de ce type de conteneur. |
ManagePermissions | Peut ajouter, supprimer (y compris auto)ou mettre à jour des membres dans les rôles de conteneur pour les conteneurs de ce type de conteneur. |
ManageContent | Peut gérer le contenu du conteneur |
Complet | Dispose de toutes les autorisations pour les conteneurs de ce type de conteneur. |
Remarque
La combinaison des autorisations Microsoft Graph et des autorisations d’application de type conteneur englobe l’autorisation du client pour les applications.
Autorisations de conteneur
Tout utilisateur accédant à un conteneur doit être membre du conteneur. L’appartenance à un conteneur accorde aux utilisateurs des autorisations de conteneur. Ces autorisations définissent le niveau d’accès dont disposent les utilisateurs sur un conteneur donné. Les autorisations de conteneur s’appliquent uniquement à l’accès au nom d’un utilisateur et non à l’accès sans utilisateur. Une application SharePoint Embedded accédant aux conteneurs sans utilisateur obtient à la place l’accès complet défini dans ses autorisations d’application de type de conteneur .
Importante
L’utilisateur appelant qui crée un conteneur par le biais d’appels délégués se voit automatiquement attribuer le rôle Propriétaire.
Autorisation | Description |
---|---|
Lecteur | Ce rôle permet à l’utilisateur de lire les propriétés et le contenu du conteneur. |
Rédacteur | Ce rôle dispose de toutes les autorisations d’un lecteur, ainsi que de l’autorisation de créer, mettre à jour et supprimer du contenu à l’intérieur du conteneur, et de mettre à jour les propriétés de conteneur applicables. |
Responsable | Ce rôle dispose de toutes les autorisations d’un writer, ainsi que de l’autorisation de gérer l’appartenance au conteneur. |
Propriétaire | Ce rôle dispose de toutes les autorisations d’un responsable, ainsi que de l’autorisation de supprimer des conteneurs. |
Quelles sont les prochaines étapes ?
Voici quelques actions que vous pouvez effectuer ensuite :
- Configurez votre manifeste d’application SharePoint Embedded (vous pouvez utiliser Entra PowerShell ou Azure CLI) pour demander les autorisations requises :
- Microsoft Graph (resourceAppId :
00000003-0000-0000-c000-000000000000
)-
FileStorageContainer.Selected
(type :Scope
, ID :085ca537-6565-41c2-aca7-db852babc212
) pour accéder aux conteneurs sur les locataires consommateurs
-
- Office 365 SharePoint Online (resourceAppId :
00000003-0000-0ff1-ce00-000000000000
)-
Container.Selected
(type :Role
, ID :19766c1b-905b-43af-8756-06526ab42875
) pour inscrire un conteneur sur les locataires consommateurs
-
- Microsoft Graph (resourceAppId :
- Accordez le consentement administrateur à votre application sur les locataires propriétaires et consommateurs (qui peuvent être le même locataire).
- Créez un type de conteneur sur le locataire propriétaire.
- Inscrivez un type de conteneur sur le locataire consommateur.
- Créer un conteneur