Freigeben über


SharePoint Embedded-Authentifizierung und -Autorisierung

Um SharePoint Embedded verwenden zu können, muss Ihre Anwendung Microsoft Graph verwenden. Erfahren Sie mehr über die Microsoft Graph-Authentifizierung und -Autorisierung. Erfahren Sie mehr über die SharePoint Embedded-Architektur.

Übersicht

Hier sind einige wichtige Prinzipien der SharePoint Embedded-Authentifizierung und -Autorisierung:

  • Anwendungen interagieren mit SharePoint Embedded über Microsoft Graph.
  • Anwendungen benötigen Anwendungsberechtigungen vom Typ Container, um auf Container dieses Containertyps zuzugreifen.
  • Anwendungen können nur auf Container zugreifen, bei denen der Benutzer Mitglied ist, wenn der Zugriff im Namen eines Benutzers verwendet wird.
  • Anwendungen können auf alle Container zugreifen, die durch ihre Containertyp-Anwendungsberechtigungen aktiviert werden, wenn sie Zugriff ohne Benutzer verwenden.
  • Anwendungen verwenden den Zugriff nach Möglichkeit im Namen von Benutzern, um die Sicherheit und Verantwortlichkeit zu verbessern.

Voraussetzungen

  • Eine Microsoft Entra-ID-Anwendungsregistrierung. Weitere Informationen finden Sie unter Registrieren einer Anwendung.
  • Ihr Microsoft Entra ID-Mandant verfügt über ein Microsoft 365-Abonnement

Authorization

SharePoint Embedded-Vorgänge werden über Microsoft Graph verfügbar gemacht. SharePoint Embedded unterstützt den Zugriff im Namen eines Benutzers und auch den Zugriff ohne Benutzer.

Wichtig

Microsoft Graph-Berechtigungen, die Ihrer Anwendung gewährt werden, ermöglichen ihr das Aufrufen von SharePoint Embedded-Endpunkten. Allerdings muss Ihrer Anwendung die Berechtigung für einen Containertyp erteilt werden, bevor sie Zugriff auf Container dieses Typs erhält.

Zugriff im Namen eines Benutzers

SharePoint Embedded-Vorgänge im Namen eines Benutzers erfordern, dass Anwendungen die Zustimmung für die delegierte Microsoft Graph-Berechtigung FileStorageContainer.Selected erhalten. Diese Berechtigung erfordert die Administratoreinwilligung für den nutzenden Mandanten, bevor ein Benutzer aus dem Mandanten ihr zustimmen kann.

Zusätzlich dazu, dass Ihre Anwendung die Zustimmung für FileStorageContainer.Selected einen nutzenden Mandanten erhält, muss der Benutzer, für den sie handelt, über Containerberechtigungen verfügen. Die effektiven Berechtigungen, über die die Anwendung verfügt, sind die Schnittmenge zwischen den Anwendungsberechtigungen und den Benutzerberechtigungen, wenn sie im Namen eines Benutzers handeln.

Wichtig

Die Verwendung von SharePoint Embedded im Namen eines Benutzers ist der empfohlene Ansatz. Diese Art von Zugriff erhöht die Sicherheit Ihrer Anwendung. Es verbessert auch die Überprüfbarkeit von Aktionen, die von Ihrer Anwendung ausgeführt werden.

Zugriff ohne Benutzer

SharePoint Embedded-Vorgänge ohne Benutzer erfordern, dass Anwendungen die Zustimmung zur Microsoft Graph-Anwendungsberechtigung FileStorageContainer.Selected erhalten. Diese Berechtigung erfordert die Administratoreinwilligung für den Nutzen des Mandanten.

Hinweis

Ein Administrator des nutzenden Mandanten muss der Berechtigungsanforderung Ihrer Anwendung zustimmen. Weitere Informationen finden Sie hier.

Außergewöhnliche Zugriffsmuster

Derzeit gibt es zwei Arten von Vorgängen mit außergewöhnlichen Zugriffsmustern:

Wichtig

Berücksichtigen Sie die Auswirkungen dieser außergewöhnlichen Zugriffsmuster auf die Art und Weise, wie Ihre Anwendung und andere Anwendungen auf SharePoint Embedded-Inhalte in Ihrem Containertyp zugreifen können.

Vorgänge, die nicht über Microsoft Graph verfügbar gemacht werden

Es gibt zwei Arten von Vorgängen, auf die derzeit nicht über Microsoft Graph zugegriffen werden kann:

Zum Ausführen von Containertypverwaltungsvorgängen müssen Sie ein SharePoint Embedded-Administrator oder globaler Administrator sein.

Um einen Containertyp zu registrieren, müssen Sie die Container.Selected Berechtigung für die Office 365 SharePoint Online Ressource anfordern.

Bereichsname Bereichs-ID Typ Vorgang
Container.Selected 19766c1b-905b-43af-8756-06526ab42875 Application Aktiviert im Kontext von SharePoint Embedded die Containertypregistrierung auf einem Nutzen-Mandanten.

Hinweis

Die Containertypverwaltung für den Besitz von Mandanten und die Registrierung für nutzende Mandanten werden bald zu Microsoft Graph-Vorgängen, und diese Berechtigung wird nicht mehr benötigt. Bleiben Sie dran.

Um die SharePoint Embedded-Agent-Oberfläche (in der Vorschauphase) in Ihrer Anwendung verwenden zu können, benötigen Sie auch die Container.Selected Berechtigung für die Office 365 SharePoint Online Ressource.

Vorgänge beim Durchsuchen von SharePoint Embedded-Inhalten

Dieser Abschnitt bezieht sich nur auf die Suchszenarien in Search Content und nicht auf die Enumerationsszenarien.

Um Microsoft Search für SharePoint Embedded-Inhalte zu verwenden, müssen Sie die delegierte Files.Read.All Microsoft Graph-Berechtigung zusätzlich zu anfordern, die FileStorageContainer.Selectednormalerweise für den SharePoint Embedded-Zugriff verwendet wird. Während der Vorschauphase dieses Features gewährt die Files.Read.All Anwendungsberechtigung Anwendungen Zugriff auf Suchfunktionen für alle SharePoint Embedded-Inhalte.

Hinweis

Microsoft Search-Unterstützung für SharePoint Embedded-Inhalte befindet sich in der Vorschau und kann geändert werden. Die Zugriffsanforderungen für Microsoft Search für SharePoint Embedded-Inhalte werden in Zukunft mit dem SharePoint Embedded-Autorisierungsmodell übereinstimmen. Bleiben Sie dran.

Vorgänge, die eine Benutzerlizenz erfordern

SharePoint Embedded ist so konzipiert, dass es funktioniert, ohne dass Endbenutzern eine Art von Microsoft 365-Produktlizenzen zugewiesen werden müssen. Es gibt jedoch bestimmte Vorgänge, die sich noch nicht an dieses Prinzip halten.

Auflisten von Containern

Der Vorgang Container auflisten gibt einen 403 Forbidden Antwortcode zurück, wenn er im Namen eines Benutzers ohne OneDrive aufgerufen wird. Es ist geplant, diese Abhängigkeit in Kürze zu entfernen. Diese Abhängigkeit gilt nicht für den Vorgang Container auflisten, wenn ohne Benutzerkontext aufgerufen wird (nur App-Modus).

Erwähnen von Benutzern in Office-Dokumenten

Die allgemeine Office-Benutzeroberfläche umfasst das Überprüfen von Dokumenten und das Hinzufügen von Kommentaren zu diesen Dokumenten. Damit Benutzer in der @mentions Personenauswahl angezeigt werden können, muss ihnen eine Microsoft 365-Lizenz zugewiesen sein.

Anwendungsberechtigungen für Containertypen

SharePoint Embedded-Anwendungen müssen von der Besitzeranwendung Containertyp-Anwendungsberechtigungen erteilt werden, bevor sie auf Container des angegebenen Containertyps zugreifen können. Containertyp-Anwendungsberechtigungen werden Anwendungen über die Containertypregistrierung gewährt.

Berechtigung Beschreibung
Keine Verfügt über keine Berechtigungen für Container oder Inhalte dieses Containertyps.
ReadContent Kann den Inhalt von Containern dieses Containertyps lesen.
WriteContent Kann Inhalte für diesen Containertyp in Container schreiben. Dies kann nicht ohne die ReadContent-Berechtigung gewährt werden.
Erstellen Kann Container dieses Containertyps erstellen.
Löschen Kann Container dieses Containertyps löschen.
Lesen Kann die Metadaten von Containern dieses Containertyps lesen.
Schreiben Kann die Metadaten von Containern dieses Containertyps aktualisieren.
EnumeratePermissions Kann die Member eines Containers und deren Rollen für Container dieses Containertyps auflisten.
AddPermissions Kann dem Container für Container dieses Containertyps Member hinzufügen.
UpdatePermissions Kann vorhandene Mitgliedschaften im Container für Container dieses Containertyps aktualisieren (ändern).
DeletePermissions Kann andere Member (aber nicht selbst) aus dem Container für Container dieses Containertyps löschen.
DeleteOwnPermissions Kann die eigene Mitgliedschaft aus dem Container für Container dieses Containertyps entfernen.
ManagePermissions Kann Mitglieder in den Containerrollen für Container dieses Containertyps hinzufügen, entfernen (einschließlich selbst) oder aktualisieren.
ManageContent Kann den Inhalt des Containers verwalten
Vollständig Verfügt über alle Berechtigungen für Container dieses Containertyps.

Hinweis

Die Kombination aus Microsoft Graph-Berechtigungen und Anwendungsberechtigungen vom Typ Container umfasst die Clientautorisierung für Anwendungen.

Containerberechtigungen

Jeder Benutzer, der auf einen Container zugreift, muss Mitglied des Containers sein. Die Mitgliedschaft in einem Container gewährt Benutzern Containerberechtigungen. Diese Berechtigungen definieren die Zugriffsebene, über die Benutzer für einen bestimmten Container verfügen. Containerberechtigungen gelten nur für den Zugriff im Namen eines Benutzers und nicht für den Zugriff ohne einen Benutzer. Eine SharePoint Embedded-Anwendung, die auf Container ohne Benutzer zugreift, erhält stattdessen den vollzugriff, der in den Anwendungsberechtigungen des Containertyps definiert ist.

Wichtig

Dem aufrufenden Benutzer, der über delegierte Aufrufe einen neuen Container erstellt, wird automatisch die Rolle Besitzer zugewiesen.

Berechtigung Beschreibung
Reader Diese Rolle ermöglicht es dem Benutzer, die Eigenschaften und den Inhalt des Containers zu lesen.
Writer Diese Rolle verfügt über alle Berechtigungen, über die ein Leser verfügt, sowie über die Berechtigung zum Erstellen, Aktualisieren und Löschen von Inhalten innerhalb des Containers sowie zum Aktualisieren anwendbarer Containereigenschaften.
Manager Diese Rolle verfügt über alle Berechtigungen, über die ein Writer verfügt, sowie über die Berechtigung zum Verwalten der Mitgliedschaft im Container.
Besitzer Diese Rolle verfügt über alle Berechtigungen, über die ein Manager verfügt, sowie über die Berechtigung zum Löschen von Containern.

Was kommt als nächstes

Hier sind einige Aktionen, die Sie als Nächstes ausführen können:

  1. Konfigurieren Sie Ihr SharePoint Embedded-Anwendungsmanifest (Sie können Microsoft Entra PowerShell oder die Azure CLI verwenden), um die erforderlichen Berechtigungen anzufordern:

    • Microsoft Graph (resourceAppId: 00000003-0000-0000-c000-000000000000)
      • FileStorageContainer.Selected (Typ: Scope, ID: 085ca537-6565-41c2-aca7-db852babc212) für den Zugriff auf Container auf nutzenden Mandanten
    • Office 365 SharePoint Online (resourceAppId: 00000003-0000-0ff1-ce00-000000000000)
      • Container.Selected (Typ: Role, ID: 19766c1b-905b-43af-8756-06526ab42875) zum Registrieren eines Containers auf nutzenden Mandanten
  2. Erteilen Sie Ihrer Anwendung die Administratoreinwilligung sowohl für eigene als auch für die Nutzung von Mandanten (die derselbe Mandant sein kann).

    Hinweis

    Die Container.Selected Anwendungsberechtigung ist ausgeblendet, was probleme beim Erteilen der Administratoreinwilligung über den Bereich Unternehmens-Apps im Azure-Portal verursachen kann. Erstellen Sie stattdessen die URL für die Administratoreinwilligung, und stellen Sie sie ihrem Microsoft Entra Verzeichnisadministrator zur Verfügung. Zum Beispiel:

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

    Stellen Sie sicher, dass der Microsoft Entra Verzeichnisadministrator eine erfolgreiche Antwort bestätigt.

  3. Erstellen Sie einen neuen Containertyp auf dem besitzenden Mandanten.

  4. Registrieren Sie einen Containertyp auf dem Nutzen-Mandanten.

  5. Erstellen eines Containers