Azure Files, standart SMB (Server Message Block) ve NFS (Network File System) protokolleri aracılığıyla erişilebilen paylaşımlı dosya depolama sağlayan tamamen yönetilen bir bulut dosya depolama hizmetidir. Kullanılan ana protokol SMB olmasına rağmen, NFS Azure dosya paylaşımları Windows için desteklenmemektedir ( docs göre). Birden fazla sanal makine (VM) veya yerel sistemler tarafından aynı anda erişilebilen yüksek kullanılabilirliğe sahip ağ dosya paylaşımları oluşturmanıza olanak tanır ve ortamlar arasında kesintisiz dosya paylaşımını sağlar.
Access Tiers
Transaction Optimized: İşlem yoğun operasyonlar için optimize edilmiştir.
Hot: İşlemler ve depolama arasında dengelidir.
Cool: Depolama için maliyet etkin.
Premium: Düşük gecikme süresi ve IOPS yoğun iş yükleri için optimize edilmiş yüksek performanslı dosya depolama.
Backups
Daily backup: Her gün belirtilen bir saatte (örneğin, 19.30 UTC) bir yedekleme noktası oluşturulur ve 1 ila 200 gün arasında saklanır.
Weekly backup: Her hafta belirtilen bir gün ve saatte (Pazar günü 19.30) bir yedekleme noktası oluşturulur ve 1 ila 200 hafta arasında saklanır.
Monthly backup: Her ay belirtilen bir gün ve saatte (örneğin, ilk Pazar günü 19.30) bir yedekleme noktası oluşturulur ve 1 ila 120 ay arasında saklanır.
Yearly backup: Her yıl belirtilen bir gün ve saatte (örneğin, Ocak ayının ilk Pazar günü 19.30) bir yedekleme noktası oluşturulur ve 1 ila 10 yıl arasında saklanır.
Manuel yedeklemeler ve anlık görüntüler her zaman gerçekleştirilebilir. Yedeklemeler ve anlık görüntüler aslında bu bağlamda aynıdır.
Supported Authentications via SMB
On-premises AD DS Authentication: Kimlik tabanlı erişim için Microsoft Entra ID ile senkronize edilmiş yerel Active Directory kimlik bilgilerini kullanır. Yerel AD DS'ye ağ bağlantısı gerektirir.
Microsoft Entra Domain Services Authentication: Microsoft Entra kimlik bilgilerini kullanarak erişim sağlamak için Microsoft Entra Domain Services (bulut tabanlı AD) kullanır.
Microsoft Entra Kerberos for Hybrid Identities: Microsoft Entra kullanıcılarının Kerberos kullanarak Azure dosya paylaşımlarını internet üzerinden kimlik doğrulamasına olanak tanır. Yerel etki alanı denetleyicilerine bağlantı gerektirmeden hibrit Microsoft Entra katılımlı veya Microsoft Entra katılımlı VM'leri destekler. Ancak yalnızca bulut kimliklerini desteklemez.
AD Kerberos Authentication for Linux Clients: Yerel AD DS veya Microsoft Entra Domain Services aracılığıyla SMB kimlik doğrulaması için Linux istemcilerinin Kerberos kullanmasına olanak tanır.
Enumeration
# Get storage accountsazstorageaccountlist#Get the account name from here# List file sharesazstoragesharelist--account-name<name>azstorageshare-rmlist--storage-account<name># To see the deleted ones too --include-deleted# Get dirs/files inside the shareazstoragefilelist--account-name<name>--share-name<share-name>## If type is "dir", you can continue enumerating files inside of itazstoragefilelist--account-name<name>--share-name<prev_dir/share-name># Download a complete share (with directories and files inside of them)azstoragefiledownload-batch-d.--source<share-name>--account-name<name># Get snapshots/backupsazstoragesharelist--account-name<name>--include-snapshots--query"[?snapshot != null]"# List contents of a snapshot/backupazstoragefilelist--account-name<name>--share-name<share-name>--snapshot<snapshot-version>#e.g. "2024-11-25T11:26:59.0000000Z"# Download snapshot/backupazstoragefiledownload-batch-d.--account-name<name>--source<share-name>--snapshot<snapshot-version>
Get-AzStorageAccount# List File SharesGet-AzStorageShare-Context (Get-AzStorageAccount-ResourceGroupName "<resource-group-name>"-Name "<storage-account-name>").Context# Get Directories/Files Inside the ShareGet-AzStorageFile-ShareName "<share-name>"-Context (Get-AzStorageAccount-ResourceGroupName "<resource-group-name>"-Name "<storage-account-name>").ContextGet-AzStorageFile-ShareName "<share-name>"-Path "<share-directory-path>"-Context (Get-AzStorageAccount-ResourceGroupName "<resource-group-name>"-Name "<storage-account-name>").Context# Download a Complete ShareGet-AzStorageFileContent-ShareName "<share-name>"-Destination "C:\Download"-Path "<share-directory-path>"-Context (Get-AzStorageAccount-ResourceGroupName "<resource-group-name>"-Name "<storage-account-name>").Context# Get Snapshots/BackupsGet-AzStorageShare-Context (Get-AzStorageAccount-ResourceGroupName "<resource-group-name>"-Name "<storage-account-name>").Context |Where-Object { $_.SnapshotTime-ne$null }# List Contents of a Snapshot/BackupGet-AzStorageFile-ShareName "<share-name>"-Context (New-AzStorageContext-StorageAccountName "<storage-account-name>"-StorageAccountKey (Get-AzStorageAccountKey-ResourceGroupName "<resource-group-name>"-Name "<storage-account-name>"|Select-Object-ExpandProperty Value) -SnapshotTime "<snapshot-version>")
Varsayılan olarak az cli, bir anahtarı imzalamak ve işlemi gerçekleştirmek için bir hesap anahtarı kullanacaktır. Entra ID anahtar ayrıcalıklarını kullanmak için --auth-mode login --enable-file-backup-request-intent parametrelerini kullanın.
Kullanmak için hesap anahtarını belirtmek için --account-key parametresini kullanın
SAS token ile erişmek için --sas-token parametresini SAS token ile kullanın
Bağlantı
Bunlar, yazım sırasında Azure tarafından bir Dosya Paylaşımına bağlanmak için önerilen betiklerdir:
<STORAGE-ACCOUNT>, <ACCESS-KEY> ve <FILE-SHARE-NAME> yer tutucularını değiştirmeniz gerekiyor.
$connectTestResult =Test-NetConnection-ComputerName filescontainersrdtfgvhb.file.core.windows.net -Port 445if ($connectTestResult.TcpTestSucceeded) {# Save the password so the drive will persist on rebootcmd.exe/C "cmdkey /add:`"<STORAGE-ACCOUNT>.file.core.windows.net`" /user:`"localhost\<STORAGE-ACCOUNT>`" /pass:`"<ACCESS-KEY>`""# Mount the driveNew-PSDrive-Name Z -PSProvider FileSystem -Root "\\<STORAGE-ACCOUNT>.file.core.windows.net\<FILE-SHARE-NAME>"-Persist} else {Write-Error-Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."}