Freigeben über


Herstellen einer Verbindung mit einem FTP-Dateiserver aus Workflows in Azure Logic Apps

Gilt für: Azure Logic Apps (Verbrauch + Standard)

In dieser Schrittanleitung wird gezeigt, wie Sie aus einem Workflow in Azure Logic Apps auf Ihren SFTP-Server (SSH File Transfer Protocol) zugreifen. SFTP ist ein Netzwerkprotokoll, das Dateizugriff, Dateiübertragung und Dateiverwaltung über jeden zuverlässigen Datenstrom ermöglicht und dabei das Secure Shell (SSH)-Protokoll verwendet.

In Logik-App-Verbrauchsworkflows können Sie den verwalteten SFTP-SSH-Connector verwenden, während Sie in Logik-App-Standardworkflows den integrierten SFTP-Connector oder den verwalteten SFTP-SSH-Connector verwenden können. Sie können diese Connectorvorgänge verwenden, um automatisierte Workflows zu erstellen, die ausgelöst durch Ereignisse in Ihrem SFTP-Server oder in anderen Systemen ausgeführt werden sowie Aktionen zum Verwalten von Dateien auf Ihrem SFTP-Server ausführen. Sowohl die verwalteten als auch die integrierten Connectors verwenden das SSH-Protokoll.

Hinweis

Der von SFTP verwaltete Konnektor ist veraltet. Die Vorgänge dieses Konnektors werden daher nicht mehr im Workflow-Designer angezeigt.

Ihr Workflow kann beispielsweise mit einem SFTP-Trigger beginnen, der Ereignisse auf Ihrem SFTP-Server überwacht und darauf reagiert. Der Trigger stellt die Ausgaben für nachfolgende Aktionen in Ihrem Workflow zur Verfügung. Ihr Workflow kann SFTP-Aktionen ausführen, die Dateien über Ihr SFTP-Serverkonto abrufen, erstellen und verwalten. Die folgende Liste enthält weitere Beispielaufgaben:

  • Sie können die Vorgänge überwachen, wenn Dateien hinzugefügt oder geändert werden.
  • Sie können Dateien abrufen, erstellen, kopieren, umbenennen, aktualisieren, auflisten und löschen.
  • Sie können Ordner erstellen.
  • Sie können Dateiinhalte und Metadaten abrufen.
  • Sie können Archive in Ordner extrahieren.

In den folgenden Schritte wird das Azure-Portal verwendet. Mit der entsprechenden Azure Logic Apps-Erweiterung können Sie aber auch die folgenden Tools verwenden, um Logik-App-Workflows zu erstellen und zu bearbeiten:

Technische Referenz für den Connector

Der SFTP-Connector hat verschiedene Versionen, die auf dem Typ der logischen Anwendung und der Hostumgebung basieren.

Logik-App-Typ (Plan) Environment Connector-Version
Verbrauch Azure Logic Apps mit mehreren Mandanten Verwalteter Connector, der im Connectorkatalog unter Runtime>Freigegeben angezeigt wird. Weitere Informationen finden Sie in der folgenden Dokumentation:

- Referenz zum verwalteten SFTP-SSH-Connector
- Verwaltete Connectors in Azure Logic Apps
Standard Einzelmandanten-Azure Logic Apps und App Service-Umgebung v3 (nur Windows-Pläne) Verwalteter Connector, der im Connectorkatalog unter Runtime>Freigegeben erscheint, und der integrierte Connector, der im Connectorkatalog unter Runtime>In-App erscheint und auf einem Dienstanbieter basiert Der integrierte Konnektor kann sich direkt mit einem SFTP-Server verbinden und auf virtuelle Azure-Netzwerke zugreifen, indem eine Verbindungszeichenfolge ohne lokales Datengateway verwendet wird. Weitere Informationen finden Sie in der folgenden Dokumentation:

- Referenz zum verwalteten SFTP-SSH-Connector
- Referenz zum integrierten SFTP-Connector

- Verwaltete Connectors in Azure Logic Apps
- Integrierte Connectors in Azure Logic Apps

Allgemeine Einschränkungen

Bekannte Probleme

Standardmäßig besitzen Auslöser, die ein Array zurückgeben, eine Einstellung Teilen bei, die bereits aktiviert ist. Wenn diese Einstellung aktiviert ist, löst der Trigger automatisch das Array auf, indem intern eine separate Workflowinstanz erstellt wird, um jedes Arrayelement zu verarbeiten. Alle Workflowinstanzen werden parallel ausgeführt, sodass die Arrayelemente gleichzeitig verarbeitet werden.

Wenn die Einstellung Teilen bei aktiviert ist, geben verwaltete Connectortrigger jedoch die Ausgaben für alle Arrayelemente als Listen zurück. Alle nachfolgenden Aktionen, die auf diese Ausgaben verweisen, müssen diese Ausgaben zunächst als Listen verarbeiten. Um jedes Arrayelement einzeln zu behandeln, können Sie zusätzliche Aktionen hinzufügen. Wenn Sie beispielsweise diese Arrayelemente durchlaufen möchten, können Sie eine For each-Schleife verwenden. Verwenden Sie für Trigger, die nur Metadaten oder Eigenschaften zurückgeben, eine Aktion, die zuerst die Metadaten des Arrayelements abruft, und verwenden Sie dann eine Aktion, um den Inhalt der Elemente abzurufen.

Sie müssen diesen Ansatz nur auf verwaltete Connectortrigger anwenden, nicht auf integrierte Connectortrigger, die Ausgaben für ein Arrayelement gleichzeitig zurückgeben, wenn die Einstellung Teilen bei aktiviert ist.

Angenommen, Sie haben einen verwalteten Connectortrigger namens Beim Hinzufügen oder Ändern einer Datei (nur Eigenschaften), der die Metadaten oder Eigenschaften für die neuen oder aktualisierten Dateien als Arrays zurückgibt. Um die Metadaten für jede Datei separat abzurufen, können Sie eine For each-Schleife verwenden, die das Array durchläuft. Verwenden Sie in dieser Schleife die folgenden verwalteten Connectoraktionen in der angegebenen Reihenfolge:

  1. Dateimetadaten abrufen, um die Metadaten der einzelnen Dateien abzurufen.

  2. Dateiinhalt abrufen, um den Inhalt der einzelnen Dateien abzurufen.

Segmentierung

Weitere Informationen dazu, wie der verwaltete SFTP-SSH-Connector große Dateien verarbeiten kann, die die Standardgrößenlimits überschreiten, finden Sie unter Referenz zum verwalteten SFTP-SSH-Connector – Chunking.

Voraussetzungen

  • Ein Azure-Konto und ein Azure-Abonnement. Wenn Sie nicht über ein Azure-Abonnement verfügen, können Sie sich für ein kostenloses Azure-Konto registrieren.

  • Verbindungs- und Authentifizierungsinformationen für den Zugriff auf Ihren SFTP-Server, z. B. die Serveradresse, Kontoanmeldeinformationen, Zugriff auf einen privaten SSH-Schlüssel und das Kennwort für den privaten SSH-Schlüssel. Weitere Informationen finden Sie unter Referenz zum verwalteten SFTP-SSH-Connector – Authentifizierung und Berechtigungen.

    Wichtig

    Wenn Sie Ihre Verbindung erstellen und Ihren privaten SSH-Schlüssel in die Eigenschaft Privater SSH-Schlüssel eingeben, stellen Sie sicher, dass Sie die Schritte zum Angeben des vollständigen und richtigen Werts für diese Eigenschaft ausführen. Andernfalls führt ein ungültiger Schlüssel dazu, dass die Verbindung fehlschlägt.

  • Der Logik-App-Workflow, in dem Sie auf Ihr SFTP-Konto zugreifen möchten. Um mit einem SFTP-SSH-Trigger zu starten, müssen Sie mit einem leeren Workflow beginnen. Um eine SFTP-SSH-Aktion zu verwenden, starten Sie Ihren Workflow mit einem anderen Trigger, z. B. dem Wiederholungstrigger.

Hinzufügen eines SFTP-Triggers

  1. Öffnen Sie im Azure-Portal Ihre Verbrauchslogik-App mit einem leeren Workflow im Designer.

  2. Führen Sie im Designer diese allgemeinen Schritte aus, um den gewünschten SFTP-SSH-Trigger hinzuzufügen.

  3. Wenn Sie dazu aufgefordert werden, geben Sie die notwendigen Verbindungsinformationen an. Wählen Sie Erstellen, wenn Sie fertig sind.

  4. Nachdem das Triggerinformationsfeld angezeigt wurde, geben Sie die erforderlichen Informationen für Ihren ausgewählten Trigger an. Weitere Informationen finden Sie unter Referenz zu Triggern für verwaltete SFTP-SSH-Connectors.

  5. Wenn Sie fertig sind, speichern Sie Ihren Workflow. Wählen Sie auf der Symbolleiste des Designers Speichern aus.

Wenn Sie Ihren Workflow speichern, werden Ihre Aktualisierungen automatisch in der bereitgestellten Logik-App veröffentlicht, die live in Azure ausgeführt wird. Wenn Sie nur einen Trigger angeben, überprüft Ihr Workflow lediglich basierend auf Ihrem angegebenen Zeitplan den FTP-Server. Sie müssen eine Aktion hinzufügen, die auf den Trigger reagiert und etwas mit den Triggerausgaben macht.

Beispielsweise startet der Trigger namens Beim Hinzufügen oder Ändern einer Datei einen Workflow, wenn eine Datei auf einem SFTP-Server hinzugefügt oder geändert wird. Als nachfolgende Aktion können Sie eine Bedingung hinzufügen, die überprüft, ob der Dateiinhalt Ihre angegebenen Kriterien erfüllt. Wenn der Inhalt die Bedingung erfüllt, verwenden Sie die Aktion namens Dateiinhalt abrufen, um den Dateiinhalt abzurufen, und verwenden Sie dann eine weitere Aktion, um diesen Dateiinhalt in einem anderen Ordner auf dem SFTP-Server abzulegen.

Hinzufügen einer SFTP-Aktion

Bevor Sie eine SFTP-Aktion verwenden können, muss Ihr Workflow bereits mit einem Trigger beginnen, der von jeder beliebigen Art sein kann, für die Sie sich entscheiden. Sie können z. B. den generischen integrierten Serientrigger verwenden, um Ihren Workflow nach einem bestimmten Zeitplan zu starten.

  1. Öffnen Sie im Azure-Portal Ihre Verbrauchslogik-App mit einem Workflow im Designer.

  2. Führen Sie im Designer diese allgemeinen Schritte aus, um die gewünschte SFTP-SSH-Aktion hinzuzufügen.

  3. Wenn Sie dazu aufgefordert werden, geben Sie die notwendigen Verbindungsinformationen an. Wählen Sie Erstellen, wenn Sie fertig sind.

  4. Nachdem das Aktionsinformationsfeld angezeigt wurde, geben Sie die erforderlichen Informationen für Ihre ausgewählte Aktion an. Weitere Informationen finden Sie unter Referenz zu Aktionen für verwaltete SFTP-SSH-Connectors.

  5. Wenn Sie fertig sind, speichern Sie Ihren Workflow. Wählen Sie auf der Symbolleiste des Designers Speichern aus.

Beispielsweise ruft die Aktion namens Dateiinhalt anhand des Pfads abrufen den Inhalt einer Datei auf einem SFTP-Server durch Angeben des Dateipfads ab. Sie können den Trigger aus dem vorherigen Beispiel sowie eine Bedingung verwenden, die der Dateiinhalt erfüllen muss. Wenn die Bedingung „true“ (erfüllt) ist, kann eine nachfolgende Aktion den Inhalt abrufen.


Problembehandlung

Weitere Informationen finden Sie in der folgenden Dokumentation:

Nächste Schritte