Blob-Storage unterstützt jetzt das SSH File Transfer Protokoll (SFTP). Diese Unterstützung bietet die Möglichkeit, über einen SFTP-Endpunkt eine sichere Verbindung mit einem Storage-Account herzustellen. So können Sie das SFTP für den Dateizugriff, die Dateiübertragung und die Dateiverwaltung verwenden.
Azure verwendet Tools wie die Azure Blob-Service-REST-API, Azure SDK und AzCopy, um Daten sicher an ein Blob-Storage zu übertragen. Legacy-Workloads verwenden jedoch häufig herkömmliche Dateiübertragungsprotokolle wie SFTP. Sie können benutzerdefinierte Anwendungen für die Verwendung der REST-API und des Azure SDK aktualisieren, aber nur, indem Sie größere Änderungen am Code vornehmen.
Mit SFTP-Unterstützung für Azure Blob-Storage kann man einen SFTP-Endpunkt mit einer einzigen Einstellung aktivieren. Anschließend lassen sich lokale Benutzeridentitäten für die Authentifizierung einrichten, um Daten sicher zu übertragen, ohne zusätzliche Arbeit ausführen zu müssen.
SFTP Funktionalität mittels Blob
Für die SFTP-Unterstützung müssen Blobs in hierarchischen Namespaces organisiert werden. Azure Data Lake Storage Gen2 führt die Möglichkeit ein, hierarchische Namespaces zu verwenden. Es organisiert Objekte (Dateien) in einer Hierarchie von Verzeichnissen und Unterverzeichnissen, genauso wie ein Dateisystem auf einem Computer organisiert ist. Hierarchische Namespaces lassen sich skalieren, ohne die Datenkapazität oder Leistung zu beeinträchtigen.
Authentifizierung
Noch werden keine Azure-AD-Authentifizierung über SFTP unterstützt. Stattdessen wird ein eigenes System mit «lokalen Benutzern» verwendet.
Lokale Benutzer müssen für die Authentifizierung entweder ein Kennwort oder Anmeldeinformationen für einen privaten SSH-Schlüssel (Secure Shell) verwenden. Sie können maximal 1.000 lokale Benutzer für ein Speicherkonto verwenden.
Lokale User können sich mit
- SSH Schlüsselpaar aus einem öffentlichen und einem privaten Schlüssel,
- Kennwort.
authentifizieren.
Beide Formen der Authentifizierung können konfiguriert und bei der Erstellung der lokalen Benutzer ausgewählt werden.
Berechtigung
Auf dem momentanen Stand können Berechtigungen NUR auf Containerebene verteilt werden. Das bedeutet, dass auf einzelnen Verzeichnissen verschiedene Berechtigungen nicht verteilt werden können. Nachfolgend die Tabelle der möglichen verschiedenen Berechtigungen:
Erstellen der Benutzer
- Um ein SFTP Container zu erstellen, muss ein Storage-Account V2 angelegt werden.
- Danach ein Container erstellt werden, der als SFTP Datenträger dient.
- Jetzt sollte es eine Funktion «SFTP (Vorschau)» unter Einstellungen geben -> muss bei der Erstellung des Storage-Accounts ausgewählt werden
Hier können Lokale Benutzer angelegt werden (siehe Bld):- Benutzernamen eintragen und die Art der Authentifizierung wählen
- SFTP Container auswählen
- Berechtigung auswählen
- Startverzeichnis angeben
Preise
Transaktions- und Speicherkosten hängen von Faktoren wie der Art des Speicherkontos und dem Endpunkt ab, der zum Übertragen von Daten an das Speicherkonto verwendet wird.
Fazit
Diese neue Funktion vereinfacht die gesamte Struktur, um einen SFTP Server/Container zu hosten. Es wird kein Server mehr benötigt, der auch als SFTP Filesystem dient. Ein Image, das zum Beispiel mit Docker gehostet werden muss, ist nicht mehr nötig und spart so nicht nur Geld, sondern auch einen Teil der Wartung und Entwicklung.
Dies ist ein Beitrag von Florian Becher, QUIBIQ Schweiz AG