Erstellen und Verwalten von Containern

Gilt für: Entwickler

Erstellen und verwalten Sie Container, nachdem Ihr Containertyp erstellt, registriert und autorisiert wurde. Container sind die grundlegende Speichereinheit in SharePoint Embedded.

Abschließen Konfigurieren Sie die Authentifizierung und Autorisierung , bevor Sie Container-APIs aufrufen.

Grundlegendes zu Containern

Alle SharePoint Embedded-Dateien und -Dokumente werden in Containern gespeichert.

Ein Container:

  • Gehört zu einem Microsoft 365-Mandanten, der den Datenverbrauch in Anspruch nimmt.
  • Verfügt über eine unveränderliche Containertyp-ID.
  • Speichert Inhalte für Ihre Anwendung.
  • Definiert eine Grenze für Mitgliedschaft und Berechtigungen.
  • Der Zugriff erfolgt über Microsoft Graph.

Die Architekturübersicht finden Sie unter SharePoint Embedded-App-Architektur.

Kennen Sie den Lebenszyklus

Ein typischer Containerlebenszyklus umfasst:

  1. Erstellen Sie einen Container.
  2. Mitglieder hinzufügen oder bestätigen.
  3. Hochladen und Verwalten von Dateien.
  4. Lesen oder Aktualisieren von Containermetadaten.
  5. Recyceln Sie einen Container, wenn er nicht mehr aktiv ist.
  6. Stellen Sie bei Bedarf einen wiederverwerteten Container wieder her.
  7. Container während der Bereinigung endgültig löschen

Fahren Sie mit Hochladen, Herunterladen und Verwalten von Dateien für Inhaltsvorgänge fort.

Voraussetzungen

Stellen Sie vor dem Erstellen von Containern Folgendes sicher:

  • Der Containertyp ist vorhanden.
  • Der Containertyp ist im nutzenden Mandanten registriert.
  • Die App hat die Zustimmung von Microsoft Graph FileStorageContainer.Selected .
  • Die App verfügt über Containertypberechtigungen für den Vorgang.
  • Die App ruft ihr Token als vertraulichen Client ab, da dies für die Containererstellung erforderlich ist.
  • Bei delegierten Anrufen kann der angemeldete Benutzer die erforderliche Containerrolle erhalten.
  • Bei Testcontainertypen befinden Sie sich innerhalb der Testlimits.

Wichtig

Testcontainertypen können bis zu fünf Container erstellen, einschließlich aktiver Container und Container im Papierkorb.

Verwenden eines vertraulichen Clients zum Erstellen von Containern

Das Erstellen eines Containers erfordert eine vertrauliche Clientanwendung . Ein vertraulicher Client verfügt über Anmeldeinformationen, z. B. einen geheimen Clientschlüssel oder ein Zertifikat, und ruft Token von einer Komponente ab, die diese Anmeldeinformationen privat hält, z. B. ein Web-App-Back-End oder ein Dienst.

Container erstellen Aufrufe, die ein Token aus einer öffentlichen Clientanwendung verwenden, schlagen fehl, da öffentliche Clienttoken für den Endbenutzer zugänglich sind und wiederverwendet werden können, ohne dass die Anwendung dies bemerkt. Zu den öffentlichen Clients gehören Single-Page-Apps, mobile Apps und Desktop-Apps.

Diese Anforderung gilt sowohl für die delegierte als auch für die Nur-App-Erstellung:

  • Rufen Sie für die delegierte Erstellung das Token mit dem Autorisierungscodeflow und Clientanmeldeinformationen ab, und rufen Sie dann Microsoft Graph über Ihr Back-End auf.
  • Rufen Sie für die reine App-Erstellung das Token mit dem Clientanmeldeinformationsfluss ab, der immer vertraulich ist.

Wenn Ihre App über ein Front-End eines öffentlichen Clients verfügt, leiten Sie die Containererstellung über einen vertraulichen Back-End-Dienst weiter, anstatt Microsoft Graph vom Client aus aufzurufen.

Weitere Informationen finden Sie unter Öffentliche und vertrauliche Clientanwendungen.

Delegierte oder reine App-Erstellung auswählen

Verwenden Sie delegierten Zugriff, wenn ein Benutzer die Erstellung initiiert, der Benutzer muss verantwortlich sein, oder der erstellende Benutzer soll Containerbesitzer werden.

Verwenden Sie den Nur-App-Zugriff, wenn ein Dienst Container bereitstellt, kein Benutzer anwesend ist und die App über die Berechtigung zum Erstellen von Containern verfügt.

Hinweis

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

Container erstellen

Verwenden Sie Microsoft Graph, um einen Dateispeichercontainer für Ihren registrierten Containertyp zu erstellen.

Informationen zum kanonischen API-Shape finden Sie unter Erstellen von fileStorageContainer.

Schritte zur Implementierung:

  1. Beziehen Sie ein gültiges Microsoft Graph-Token von einem vertraulichen Client.
  2. Schließen Sie die von der API benötigten Informationen zum Zielcontainertyp ein.
  3. Senden Sie die Erstellungsanforderung.
  4. Speichern Sie die zurückgegebene Container-ID.
  5. Store-Displaymetadaten, die Ihre App benötigt.
  6. Zuweisen oder Bestätigen der Mitgliedschaft für delegierte Szenarien

Tipp

Speichern Sie die Container-ID in Ihrer Anwendungsdatenbank als dauerhafte Verknüpfung zwischen Ihrem Geschäftsobjekt und dem SharePoint Embedded-Container.

Erstellen eines Containers in Visual Studio Code

Für die Testentwicklung kann die Visual Studio Code-Erweiterung Container erstellen.

  1. Öffnen Sie die SharePoint Embedded-Ansicht.
  2. Erweitern Sie den registrierten Testcontainertyp.
  3. Klicken Sie mit der rechten Maustaste auf Container.
  4. Wählen Sie Container erstellen aus.
  5. Geben Sie einen Namen ein.
  6. Vergewissern Sie sich, dass der Container unter dem Containertyp angezeigt wird.

Siehe Schnellstart: Erstellen Ihrer ersten App mit VS Code für den Erweiterungsflow.

Container auflisten

Listen Sie Container auf, um verfügbare Container anzuzeigen, die Bereitstellung zu überprüfen oder die Wartung auszuführen.

Informationen zum kanonischen API-Shape finden Sie unter Auflisten von Containern.

Beim Auflisten von Containern:

  • Verwenden Sie den Nur-App-Zugriff für Dienstinventurszenarien.
  • Verwenden Sie delegierten Zugriff nur, wenn der Benutzerkontext geeignet ist.
  • Handhabung von Paging
  • Ordnen Sie Ergebnisse Ihren Anwendungsdaten zu.

Hinweis

Delegierte Listencontainer werden derzeit zurückgegeben 403 Forbidden , wenn der Benutzer kein OneDrive besitzt. Diese Abhängigkeit gilt nicht für reine App-Listenaufrufe.

Container abrufen

Rufen Sie einen Container ab, wenn Sie die neuesten Metadaten benötigen, bevor Sie handeln.

Verwenden Sie diesen Vorgang, um zu bestätigen, dass der Container vorhanden ist, die Anzeigeeigenschaften zu lesen, den Containertyp zu überprüfen, den Status vor Dateivorgängen zu überprüfen und die Wiederherstellung zu bestätigen.

Verknüpfen Sie Implementierungen mit dem Ressourcentyp fileStorageContainer.

Containermetadaten aktualisieren

Aktualisieren Sie Metadaten, wenn sich unterstützte Eigenschaften ändern.

Vor dem Aktualisieren:

  1. Vergewissern Sie sich, dass die App über die Containertypberechtigung Write verfügt.
  2. Vergewissern Sie sich, dass der delegierte Benutzer über eine entsprechende Rolle verfügt.
  3. Aktuellen Containerstatus lesen.
  4. Wenden Sie nur beabsichtigte Änderungen an.
  5. Überprüfen Sie die Antwort.

Löschen oder Recyceln eines Containers

Recyceln oder löschen Sie einen Container, wenn er nicht mehr aktiv ist.

Vor dem Löschen:

  • Vergewissern Sie sich, dass der Anrufer über die Berechtigung verfügt.
  • Vergewissern Sie sich, dass Ihre App archivierte Geschäftsreferenzen hat.
  • Entscheiden Sie, ob der Behälter zuerst recycelt werden soll.
  • Teilen Sie den Benutzern mit, wie sie einen wiederverwerteten Container wiederherstellen können.

Die Visual Studio Code-Erweiterung enthält Recycling- und Wiederherstellungsfunktionen für die Testentwicklung.

Wiederherstellen eines wiederverwendeten Containers

Ein Wiederherstellungsflow sollte:

  1. Identifizieren Sie den wiederverwerteten Container.
  2. Vergewissern Sie sich, dass der Anrufer über die Berechtigung verfügt.
  3. Stellen Sie den Container wieder her.
  4. Anwendungsstatus aktualisieren.
  5. Vergewissern Sie sich, dass Dateien und Metadaten verfügbar sind.
  6. Benachrichtigen Sie den Benutzer.

Wichtig

Bei Testcontainertypen werden Container im Papierkorb immer noch auf das Limit von fünf Containern angerechnet.

Container endgültig löschen

Löschen Sie nur endgültig, wenn Sie sicher sind, dass der Container nicht mehr benötigt wird.

Sie müssen alle Container eines Containertyps entfernen, einschließlich gelöschter Container, bevor Sie den Containertyp selbst löschen.

Verwenden Sie die permanente Löschung für die Bereinigung in der Testversion, die Testdatenentfernung, das Zurückziehen eines Containertyps oder die Erfüllung von Lebenszyklusanforderungen.

Lebenszyklusvorgänge überprüfen

Erstellen Sie einen Rauchtest:

  1. Erstellen Sie einen Testcontainer.
  2. Rufen Sie sie nach ID ab.
  3. Listen Sie Container auf, und bestätigen Sie, dass sie angezeigt wird.
  4. Aktualisieren eines unterstützten Metadatenwerts.
  5. Laden Sie eine kleine Datei hoch.
  6. Recyceln oder löschen Sie den Container.
  7. Stellen Sie es wieder her, falls unterstützt.
  8. Löschen Sie es während der Bereinigung endgültig.

Behandeln von Lebenszyklusproblemen

Problembeschreibung Prüfen
Erstellungsfehler Registrierung und Create Erlaubnis.
Create fails in einem Browser, einer mobilen App oder einer Desktop-App Das Token stammt von einem öffentlichen Client. Erwerben Sie es stattdessen von einem vertraulichen Kunden.
Delegierte Erstellung schlägt fehl Benutzereinwilligung, vertraulicher Client-Token-Erwerb und Rollenzuweisungsverhalten.
Liste schlägt für delegierten Benutzer fehl OneDrive-Abhängigkeit, die im Authentifizierungsartikel erwähnt wird.
Löschen schlägt fehl Delete und die Rolle "Benutzerbesitzer" erteilt.
Fehler beim Erstellen der Testversion Aktive und recycelte Container haben möglicherweise den Grenzwert erreicht.
Löschen des Containertyps schlägt fehl Alle aktiven und gelöschten Container müssen zuerst entfernt werden.

Nächste Schritte

Fügen Sie Dateivorgänge unter Hochladen, Herunterladen und Verwalten von Dateien hinzu.