Praxis-Tutorial · Schritt für Schritt
PDF-Anhänge mit Azure Logic Apps sicher in SharePoint speichern
1. Grundlagen: Was sind Logic Apps, Graph und SharePoint?
Eine Azure Logic App ist ein Workflow aus Triggern und Aktionen. Microsoft Graph ist eine API für Microsoft-365-Ressourcen; SharePoint stellt die Dokumentbibliothek bereit. Ein neuer E-Mail-Anhang löst den Ablauf aus. Azure Functions werden nur benötigt, wenn zusätzliche Verarbeitung oder eine spezialisierte Uploadlogik nötig ist.
2. Architektur Schritt für Schritt
Ein Outlook-Trigger meldet neue E-Mails. Die Logic App liest Anhänge, prüft Typ und Größe, erzeugt eine eindeutige Vorgangs-ID und ruft einen abgesicherten Upload-Dienst auf. Dieser ordnet die Datei einer erlaubten SharePoint-Site zu, lädt sie mit Microsoft Graph hoch und speichert Metadaten sowie Bearbeitungsstatus.
Mail received → Attachment validated → Job persisted
→ Allowed SharePoint target → Microsoft Graph upload
→ DriveItem ID recorded → Completed
3. Voraussetzungen
Du benötigst ein Microsoft-365-Postfach mit geeigneten Connector-Berechtigungen, eine SharePoint-Site mit Dokumentbibliothek sowie ein Azure-Abonnement. Erstelle zunächst einen Testordner und ein separates Testpostfach. Prüfe die Nutzungs- und Berechtigungsgrenzen des Outlook-Connectors; persönliche Hotmail- und Organisationskonten sind nicht beliebig austauschbar.
4. Outlook-Trigger und Anhänge
Nutze den passenden Outlook-Trigger für neue Nachrichten und verarbeite Anhänge einzeln. Eine Dateiendung .pdf allein beweist nicht, dass die Datei ein gültiges PDF ist. Kontrolliere Content-Type, Dateisignatur, Größe und falls erforderlich Schadsoftware. Anhänge müssen häufig ausdrücklich mit ihrer Content-ID geladen werden, bevor der vollständige Dateiinhalt vorliegt.
5. Identität sicher konfigurieren
Bevorzuge Managed Identity, wenn der verwendete Azure-Dienst und der Graph-Zugriffsweg sie unterstützen. Alternativ nutzt die Function eine eigene vertrauliche Anwendung mit Zertifikat. Vermeide, Client-Secrets als Parameter zwischen Logic Apps und Functions zu verschicken. Für SharePoint können granulare App-Berechtigungen wie Sites.Selected mit separater Site-Freigabe verwendet werden. Prüfe den tatsächlich erlaubten Zugriff.
6. Sichere Dateinamen und Mandantenzuordnung
Erstelle keinen SharePoint-Pfad direkt aus ungeprüften E-Mail-Texten. Definiere eine feste Zuordnung zwischen zugelassenen Gesellschaften und Site-IDs beziehungsweise Drive-IDs. Bereinige Dateinamen, begrenze Pfadlängen und verhindere, dass Eingabedaten den Zielordner frei bestimmen können.
7. Graph-Upload verstehen
Für kleinere Dateien kann ein einfacher Content-Upload ausreichen; größere Dateien benötigen eine Upload-Session in Blöcken. Beachte die dokumentierten Größenlimits und den aktuellen Microsoft-Graph-SDK-Stand. Nach erfolgreichem Upload sollte die API eine technische DriveItem-ID und optional die Web-URL zurückliefern. Die Web-URL allein ist kein stabiler Primärschlüssel.
8. Dubletten und Wiederholung
E-Mail-Trigger können erneut ausgelöst werden. Berechne eine Idempotenzkennung aus Postfach, Message-ID und Attachment-ID beziehungsweise einem geprüften Datei-Hash. Lege vor dem Upload einen dauerhaften Jobdatensatz an; sonst können Retries identische Dateien mehrfach speichern. Definiere explizit, ob eine zweite Version erzeugt oder ein Duplikat verworfen werden soll.
9. Fehlerbehandlung und Monitoring
Unterscheide fehlerhafte Eingaben (400), fehlende Rechte (401/403), nicht gefundene Ordner (404), Drosselung (429) und temporäre Fehler (5xx). Wiederhole nur geeignete Fehler begrenzt und beachte Retry-After. Pro Verarbeitung protokollierst du Correlation-ID, Quellnachricht, Ziel-DriveItem-ID, Status und Dauer. Vermeide Dateiinhalte und Zugangstokens in Logs.
10. Praktischer Testplan
Teste ein PDF, mehrere PDF-Anhänge, einen leeren Anhang, eine umbenannte Nicht-PDF-Datei, einen nicht erlaubten Mandantencode und den erneuten Eingang derselben Nachricht. Unterbrich die Verarbeitung nach erfolgreichem SharePoint-Upload und kontrolliere, ob der Wiederanlauf keinen unbeabsichtigten zweiten Upload auslöst.
11. Sinnvolle Erweiterungen
Nach einem sicheren Eingang können Document Intelligence zur OCR, ein Klassifikationsdienst zur Zuordnung und Business Central zur Anzeige der Dokumente ergänzt werden. Bewahre Originaldatei, Versionshistorie und Freigabeinformationen gemäß den betrieblichen Anforderungen auf.
Kommentare (0)
Noch keine Kommentare. Schreibe den ersten Beitrag zur Diskussion.