Share via


Anslut till Azure Blob Storage med SSH File Transfer Protocol (SFTP)

Den här artikeln visar hur du på ett säkert sätt ansluter till Blob Storage-slutpunkten för ett Azure Storage-konto med hjälp av en SFTP-klient. När du har anslutit kan du ladda upp och ladda ned filer samt ändra åtkomstkontrollistor (ACL) på filer och mappar.

Mer information om SFTP-stöd för Azure Blob Storage finns i SSH File Transfer Protocol (SFTP) i Azure Blob Storage.

Förutsättningar

Anslut en SFTP-klient

Du kan använda valfri SFTP-klient för att ansluta och sedan överföra filer på ett säkert sätt. I följande exempel visas en Windows PowerShell-session som använder Open SSH.

PS C:\Users\temp> sftp contoso4.contosouser@contoso4.blob.core.windows.net

SFTP-användarnamnet är storage_account_name.username. I exemplet ovan storage_account_name är "contoso4" och username är "contosouser". Det kombinerade användarnamnet blir "contoso4.contosouser". Slutpunkten för blobtjänsten är "contoso4.blob.core.windows.net".

För att slutföra anslutningen kan du behöva svara på en eller flera frågor. Om du till exempel har konfigurerat den lokala användaren med lösenordsautentisering uppmanas du att ange lösenordet. Du kan också uppmanas att lita på en värdnyckel. Giltiga värdnycklar publiceras här.

Anslut med hjälp av en anpassad domän

Om du vill ansluta till blobtjänstens slutpunkt med hjälp av en anpassad domän är myaccount.myuser@customdomain.comanslutningssträng . Om startkatalogen inte har angetts för användaren är myaccount.mycontainer.myuser@customdomain.comanslutningssträng .

Viktigt!

Kontrollera att DNS-providern inte proxybegäranden eftersom detta kan leda till att anslutningsförsöket överskrider tidsgränsen.

Information om hur du mappar en anpassad domän till en blobtjänstslutpunkt finns i Mappa en anpassad domän till en Azure Blob Storage-slutpunkt.

Anslut med hjälp av en privat slutpunkt

Om du vill ansluta till blobtjänstens slutpunkt med hjälp av en privat slutpunkt är myaccount.myuser@myaccount.privatelink.blob.core.windows.netanslutningssträng . Om hemkatalogen inte har angetts för användaren är myaccount.mycontainer.myuser@myaccount.privatelink.blob.core.windows.netden .

Kommentar

Se till att du ändrar nätverkskonfigurationen till "Aktiverad från valda virtuella nätverk och IP-adresser" och välj sedan din privata slutpunkt. Annars är blobtjänstens slutpunkt fortfarande offentligt tillgänglig.

Anslut med internetroutning

Om du vill ansluta till blobtjänstens slutpunkt med internetroutning är myaccount.myuser@myaccount-internetrouting.blob.core.windows.netanslutningssträng . Om hemkatalogen inte har angetts för användaren är myaccount.mycontainer.myuser@myaccount-internetrouting.blob.core.windows.netden .

Överföra data

När du har anslutit kan du ladda upp och ladda ned filer. I följande exempel laddas upp en fil med namnet logfile.txt med hjälp av en aktiv Open SSH-session.

sftp> put logfile.txt
Uploading logfile.txt to /mydirectory/logfile.txt
logfile.txt
        100%    19    0.2kb/S    00.00

När överföringen är klar kan du visa och hantera filen i Azure-portalen.

Skärmbild av den uppladdade filen som visas i lagringskontot.

Kommentar

Azure-portalen använder BLOB REST API och Data Lake Storage Gen2 REST API. Att kunna interagera med en uppladdad fil i Azure-portalen visar samverkan mellan SFTP och REST.

Mer information om hur du ansluter och överför filer finns i dokumentationen för SFTP-klienten.

Ändra ACL för en fil eller katalog

Du kan ändra behörighetsnivån för den ägande användaren, ägande gruppen och alla andra användare av en ACL med hjälp av en SFTP-klient. Du kan också ändra ID för den ägande användaren och den ägande gruppen. Mer information om ACL-stöd för SFTP-klienter finns i ACL:er.

Ändra behörigheter

Om du vill ändra behörighetsnivån för den ägande användaren, ägande gruppen eller alla andra användare av en ACL måste den lokala användaren ha Modify Permission behörighet. Se Ge behörighet till containrar.

I följande exempel skrivs ACL:en för en katalog ut till konsolen. Sedan använder den chmod kommandot för att ange ACL till 777. Var 7 och en är den numeriska formen av rwx (läsa, skriva och köra). Så 777 ger läs-, skriv- och körningsbehörighet till den ägande användaren, ägande gruppen och alla andra användare. Det här exemplet skriver sedan ut den uppdaterade ACL:en till konsolen. Mer information om numeriska och korta former av en ACL finns i Korta formulär för behörigheter.

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

Kommentar

Det finns ännu inte stöd för att lägga till eller ändra ACL-poster för namngivna användare, namngivna grupper och namngivna säkerhetsobjekt.

Ändra ägande användare

Om du vill ändra den ägande användaren av en katalog eller blob måste den lokala användaren ha Modify Ownership behörighet. Se Ge behörighet till containrar.

I följande exempel skrivs ACL:en för en katalog ut till konsolen. ID:t för den ägande användaren är 0. I det chown här exemplet används kommandot för att ange ID för den ägande användaren till 1234 och skriver ut ändringen till konsolen.

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>

Ändra ägande grupp

Om du vill ändra ägande grupp för en katalog eller blob måste den lokala användaren ha Modify Ownership behörighet. Se Ge behörighet till containrar.

I följande exempel skrivs ACL:en för en katalog ut till konsolen. ID:t för den ägande gruppen är 0. I det chgrp här exemplet används kommandot för att ange ID för den ägande gruppen till 5678 och skriver ut ändringen till konsolen.

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