Partager via


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 de l’authentification et de 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.
  • Les applications peuvent uniquement accéder aux conteneurs dont l’utilisateur est membre lors de l’utilisation de l’accès pour le compte d’un utilisateur.
  • Les applications peuvent accéder à tous les conteneurs activés par leurs autorisations d’application de type conteneur lors de l’utilisation de l’accès sans utilisateur.
  • Les applications utilisent l’accès au nom des utilisateurs dans la mesure du possible pour améliorer la sécurité et la responsabilité

Conditions préalables

  • Inscription d’une application d’ID Microsoft Entra. Consultez Inscrire une application.
  • Votre locataire d’ID Microsoft Entra 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 avec des modèles d’accès exceptionnels :

Importante

Tenez compte des répercussions de ces modèles d’accès exceptionnels sur la façon dont votre application et d’autres applications peuvent accéder au contenu SharePoint Embedded dans votre type de conteneur.

Opérations non exposées via Microsoft Graph

Il existe actuellement deux types d’opérations qui ne sont pas accessibles via Microsoft Graph :

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 autorisation ne sera plus nécessaire. Restez à l’écoute.

Pour utiliser l’expérience de l’agent SharePoint Embedded (à l’étape Préversion) dans votre application, vous avez également besoin de l’autorisation Container.Selected sur la Office 365 SharePoint Online ressource.

Opérations impliquant la recherche de contenu SharePoint Embedded

Cette section fait référence uniquement aux scénarios de recherche dans Contenu de recherche, et non aux scénarios d’énumération.

Pour utiliser recherche Microsoft sur le contenu SharePoint Embedded, vous devez demander l’autorisation Microsoft Graph déléguée Files.Read.All par-dessus FileStorageContainer.Selected, normalement utilisée pour l’accès SharePoint Embedded. Pendant la phase d’aperçu de cette fonctionnalité, l’autorisation Files.Read.All d’application accorde aux applications l’accès aux fonctionnalités de recherche sur tout le contenu SharePoint Embedded.

Remarque

La prise en charge de Microsoft Search pour le contenu SharePoint Embedded est en préversion et est susceptible d’être modifiée. Les exigences d’accès pour le contenu de Recherche Microsoft sur SharePoint Embedded s’aligneront sur le modèle d’autorisation SharePoint Embedded à l’avenir. Restez à l’écoute.

Opérations qui nécessitent une licence utilisateur

SharePoint Embedded est conçu pour fonctionner sans que les utilisateurs finaux n’aient besoin d’aucun type de licence de produit Microsoft 365. Toutefois, certaines opérations ne respectent pas encore ce principe.

Répertorier les conteneurs

L’opération Répertorier les conteneurs retourne un 403 Forbidden code de réponse s’il est appelé au nom d’un utilisateur qui n’a pas de OneDrive. Il est prévu de supprimer bientôt cette dépendance. Cette dépendance ne s’applique pas à l’opération Répertorier les conteneurs lorsqu’elle est appelée sans contexte utilisateur (mode application uniquement).

Mentionner des utilisateurs dans des documents Office

L’expérience Office courante inclut l’examen des documents et l’ajout de commentaires à ces documents. Pour que les utilisateurs s’affichent dans le @mentions sélecteur de personnes, une licence Microsoft 365 doit leur être attribuée.

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 cliente 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 :

  1. Configurez votre manifeste d’application SharePoint Embedded (vous pouvez utiliser Microsoft 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
  2. Accordez le consentement administrateur à votre application sur les locataires propriétaires et consommateurs (qui peuvent être le même locataire).

    Remarque

    L’autorisation Container.Selected d’application est masquée, ce qui peut entraîner des problèmes lors de l’octroi du consentement administrateur à l’aide du volet Applications d’entreprise dans le Portail Azure. Au lieu de cela, créez l’URL de consentement administrateur et fournissez-la à votre administrateur d’annuaire Microsoft Entra. Par exemple :

    https://login.microsoftonline.com/{tenant}/v2.0/adminconsent?client_id={client_id}&redirect_uri={redirect_uri}

    Assurez-vous que l’administrateur d’annuaire Microsoft Entra confirme qu’une réponse a réussi.

  3. Créez un type de conteneur sur le locataire propriétaire.

  4. Inscrivez un type de conteneur sur le locataire consommateur.

  5. Créer un conteneur