Herstellen einer Verbindung mit Azure Blob Storage mithilfe des SSH-Dateiübertragungsprotokolls (SFTP)
Dieser Artikel zeigt, wie Sie mithilfe eines SFTP-Clients eine sichere Verbindung mit dem Blob Storage-Endpunkt eines Azure Storage-Kontos herstellen. Nachdem Sie eine Verbindung hergestellt haben, können Sie Dateien hoch- und herunterladen sowie Zugriffssteuerungslisten (Access Control Lists, ACLs) in Dateien und Ordnern ändern.
Weitere Informationen zur SFTP-Unterstützung für Azure Blob Storage finden Sie unter Unterstützung von SSH File Transfer Protocol (SFTP) für Azure Blob Storage (Vorschau).
Voraussetzungen
Aktivieren Sie den SFTP-Support für Azure Blob Storage. Siehe Aktivieren oder Deaktivieren des SFTP-Supports.
Autorisieren Sie den Zugriff auf SFTP-Clients. Siehe Autorisieren des Zugriffs auf Clients.
Wenn Sie eine Verbindung aus einem lokalen Netzwerk heraus herstellen, stellen Sie sicher, dass Ihr Client die ausgehende Kommunikation über den Port 22 zulässt, der von SFTP verwendet wird.
Verbinden eines SFTP-Clients
Sie können einen beliebigen SFTP-Client verwenden, um eine sichere Verbindung herzustellen und dann Dateien zu übertragen. Das folgende Beispiel zeigt eine Windows PowerShell-Sitzung, die Open SSH verwendet.
PS C:\Users\temp> sftp contoso4.contosouser@contoso4.blob.core.windows.net
Der SFTP-Benutzername lautet storage_account_name
.username
. Im obigen Beispiel entspricht der storage_account_name
„contoso4“ und der username
„contosouser“. Der kombinierte Benutzername wird zu „contoso4.contosouser“. Der Blobdienstendpunkt ist „contoso4.blob.core.windows.net“.
Um die Verbindung abzuschließen, müssen Sie möglicherweise auf eine oder mehrere Eingabeaufforderungen reagieren. Wenn Sie beispielsweise den lokalen Benutzer mit Kennwortauthentifizierung konfiguriert haben, werden Sie aufgefordert, dieses Kennwort einzugeben. Möglicherweise werden Sie auch aufgefordert, einem Hostschlüssel zu vertrauen. Gültige Hostschlüssel werden hier veröffentlicht.
Herstellen einer Verbindung mithilfe einer benutzerdefinierten Domäne
Wenn Sie mithilfe einer benutzerdefinierten Domäne eine Verbindung mit dem Blobdienstendpunkt herstellen möchten, dann lautet die Verbindungszeichenfolge myaccount.myuser@customdomain.com
. Wenn das Stammverzeichnis für den Benutzer nicht angegeben ist, dann lautet die Verbindungszeichenfolge myaccount.mycontainer.myuser@customdomain.com
.
Wichtig
Stellen Sie sicher, dass Ihr DNS-Anbieter keine Proxyanforderungen erstellt, da dies zu einem Timeout des Verbindungsversuchs führen kann.
Informationen zum Zuordnen einer benutzerdefinierten Domäne zu einem Blobdienstendpunkt finden Sie unter Zuordnen einer benutzerdefinierten Domäne zu einem Azure Blob Storage-Endpunkt.
Herstellen einer Verbindung über einen privaten Endpunkt
Wenn Sie mithilfe eines privaten Endpunkts eine Verbindung mit dem Blobdienstendpunkt herstellen möchten, lautet die Verbindungszeichenfolge myaccount.myuser@myaccount.privatelink.blob.core.windows.net
. Wenn das Stammverzeichnis für den Benutzer nicht angegeben ist, lautet es myaccount.mycontainer.myuser@myaccount.privatelink.blob.core.windows.net
.
Hinweis
Stellen Sie sicher, dass Sie die Netzwerkkonfiguration in „Aus ausgewählten virtuellen Netzwerken und IP-Adressen aktiviert“ ändern, und wählen Sie dann Ihren privaten Endpunkt aus. Andernfalls wird der Blobdienstendpunkt weiterhin öffentlich zugänglich sein.
Herstellen einer Verbindung über Internetrouting
Wenn Sie über Internetrouting eine Verbindung mit dem Blobdienst-Endpunkt herstellen möchten, lautet die Verbindungszeichenfolge myaccount.myuser@myaccount-internetrouting.blob.core.windows.net
. Wenn das Stammverzeichnis für den Benutzer nicht angegeben ist, lautet es myaccount.mycontainer.myuser@myaccount-internetrouting.blob.core.windows.net
.
Übertragen von Daten
Nachdem Sie eine Verbindung hergestellt haben, können Sie Dateien hochladen und herunterladen. Das folgende Beispiel lädt eine Datei mit dem Namen logfile.txt
mithilfe einer aktiven Open SSH-Sitzung hoch.
sftp> put logfile.txt
Uploading logfile.txt to /mydirectory/logfile.txt
logfile.txt
100% 19 0.2kb/S 00.00
Nach Abschluss der Übertragung können Sie die Datei im Azure-Portal anzeigen und verwalten.
Hinweis
Der Azure-Portal verwendet die Blob-REST-API und die Data Lake Storage-REST-API. Die Interaktion mit einer hochgeladenen Datei im Azure-Portal veranschaulicht die Interoperabilität zwischen SFTP und REST.
Anleitungen zum Verbinden und Übertragen von Dateien finden Sie in der Dokumentation Ihres SFTP-Clients.
Ändern der ACL einer Datei oder eines Verzeichnisses
Sie können die Berechtigungsstufe des besitzenden Benutzers, der besitzenden Gruppe und aller anderen Benutzer einer ACL mithilfe eines SFTP-Clients ändern. Sie können auch die ID des besitzenden Benutzers und der besitzenden Gruppe ändern. Weitere Informationen zum ACL-Support für SFTP-Clients finden Sie unter ACLs.
Berechtigungen ändern
Um die Berechtigungsstufe des besitzenden Benutzers, der besitzenden Gruppe oder aller anderen Benutzer einer ACL zu ändern, muss der lokale Benutzer über die Berechtigung Modify Permission
verfügen. Siehe Erteilen von Berechtigungen für Container.
Das folgende Beispiel gibt die ACL eines Verzeichnisses in der Konsole aus. Anschließend wird der chmod
-Befehl verwendet, um die ACL auf 777
festzulegen. Jede 7
ist die numerische Form von rwx
(Lesen, Schreiben und Ausführen). 777
erteilt also Lese-, Schreib- und Ausführungsberechtigungen für den besitzenden Benutzer, die besitzende Gruppe und alle anderen Benutzer. Dieses Beispiel gibt dann die aktualisierte ACL in der Konsole aus. Weitere Informationen zu numerischen und kurzen Formen einer ACL finden Sie unter Kurzformen für Berechtigungen.
sftp> ls -l
drwxr-x--- 1234 5678 0 Mon, 08 Jan 2024 16:53:25 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp> chmod 777 dir1
Changing mode on /dir1
sftp> ls -l
drwxrwxrwx 1234 5678 0 Mon, 08 Jan 2024 16:54:06 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
Hinweis
Das Hinzufügen oder Ändern von ACL-Einträgen für benannte Benutzer, benannte Gruppen und benannte Sicherheitsprinzipale wird noch nicht unterstützt.
Ändern des besitzenden Benutzers
Um den besitzenden Benutzer eines Verzeichnisses oder Blobs zu ändern, muss der lokale Benutzer über die Berechtigung Modify Ownership
verfügen. Siehe Erteilen von Berechtigungen für Container.
Das folgende Beispiel gibt die ACL eines Verzeichnisses in der Konsole aus. Die ID des besitzenden Benutzers lautet 0
. Dieses Beispiel verwendet den chown
-Befehl, um die ID des besitzenden Benutzers auf 1234
festzulegen, und gibt die Änderung auf der Konsole aus.
sftp> ls -l
drwxr-x--- 0 0 0 Mon, 08 Jan 2024 16:00:12 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp> chown 1234 dir1
Changing owner on /dir1
sftp> ls -l
drwxr-x--- 1234 0 0 Mon, 08 Jan 2024 16:52:52 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp>
Ändern der besitzenden Gruppe
Um die besitzende Gruppe eines Verzeichnisses oder Blobs zu ändern, muss der lokale Benutzer über die Berechtigung Modify Ownership
verfügen. Siehe Erteilen von Berechtigungen für Container.
Das folgende Beispiel gibt die ACL eines Verzeichnisses in der Konsole aus. Die ID der besitzenden Gruppe lautet 0
. Dieses Beispiel verwendet den chgrp
-Befehl, um die ID der besitzenden Gruppe auf 5678
festzulegen, und gibt die Änderung auf der Konsole aus.
sftp> ls -l
drwxr-x--- 1234 0 0 Mon, 08 Jan 2024 16:52:52 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
sftp> chgrp 5678 dir1
Changing group on /dir1
sftp> ls -l
drwxr-x--- 1234 5678 0 Mon, 08 Jan 2024 16:53:25 GMT dir1
drwxr-x--- 0 0 0 Mon, 16 Oct 2023 12:18:08 GMT dir2
Zugehöriger Inhalt
- Unterstützung von SSH File Transfer Protocol (SFTP) für Azure Blob Storage
- Aktivieren oder Deaktivieren der SFTP-Unterstützung (SSH File Transfer Protocol) in Azure Blob Storage
- Autorisieren des Zugriffs auf Azure Blob Storage von einem SFTP (SSH File Transfer Protocol)-Client
- Einschränkungen und bekannte Probleme hinsichtlich der Unterstützung von SFTP (SSH File Transfer Protocol) in Azure Blob Storage
- Hosttasten zur Unterstützung von SSH File Transfer Protocol (SFTP) für Azure Blob Storage
- Überlegungen zur Leistung von SSH SFTP (SSH File Transfer Protocol) in Azure Blob Storage