Skip to content

Commit 4f11d34

Browse files
committed
Article integrity fixes for AI readiness
1 parent b9f9106 commit 4f11d34

1 file changed

Lines changed: 34 additions & 44 deletions

File tree

articles/storage/files/files-smb-protocol.md

Lines changed: 34 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,51 @@
11
---
2-
title: SMB file shares in Azure Files
2+
title: SMB File Shares in Azure Files
33
description: Learn about file shares hosted in Azure Files using the Server Message Block (SMB) protocol, including features, security, and SMB Multichannel.
44
author: khdownie
55
ms.service: azure-file-storage
66
ms.topic: concept-article
7-
ms.date: 03/19/2025
7+
ms.date: 01/15/2026
88
ms.author: kendownie
99
ms.custom: devx-track-azurepowershell
1010
# Customer intent: As an IT admin, I want to implement SMB file shares in Azure Files, so that I can provide scalable and secure file storage solutions for my organization's applications and end-user needs.
1111
---
1212

1313
# SMB Azure file shares
1414

15+
**Applies to:** :heavy_check_mark: SMB Azure file shares
16+
1517
Azure Files offers two industry-standard protocols for mounting Azure file share: the [Server Message Block (SMB)](/windows/win32/fileio/microsoft-smb-protocol-and-cifs-protocol-overview) protocol and the [Network File System (NFS)](https://en.wikipedia.org/wiki/Network_File_System) protocol. Azure Files enables you to pick the file system protocol that is the best fit for your workload. Azure file shares don't support accessing an individual Azure file share with both the SMB and NFS protocols, although you can create SMB and NFS file shares within the same storage account. For all file shares, Azure Files offers enterprise-grade file shares that can scale up to meet your storage needs and can be accessed concurrently by thousands of clients.
1618

1719
This article covers SMB Azure file shares. For information about NFS Azure file shares, see [NFS Azure file shares](files-nfs-protocol.md).
1820

19-
## Applies to
20-
| Management model | Billing model | Media tier | Redundancy | SMB | NFS |
21-
|-|-|-|-|:-:|:-:|
22-
| Microsoft.Storage | Provisioned v2 | HDD (standard) | Local (LRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
23-
| Microsoft.Storage | Provisioned v2 | HDD (standard) | Zone (ZRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
24-
| Microsoft.Storage | Provisioned v2 | HDD (standard) | Geo (GRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
25-
| Microsoft.Storage | Provisioned v2 | HDD (standard) | GeoZone (GZRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
26-
| Microsoft.Storage | Provisioned v1 | SSD (premium) | Local (LRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
27-
| Microsoft.Storage | Provisioned v1 | SSD (premium) | Zone (ZRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
28-
| Microsoft.Storage | Pay-as-you-go | HDD (standard) | Local (LRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
29-
| Microsoft.Storage | Pay-as-you-go | HDD (standard) | Zone (ZRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
30-
| Microsoft.Storage | Pay-as-you-go | HDD (standard) | Geo (GRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
31-
| Microsoft.Storage | Pay-as-you-go | HDD (standard) | GeoZone (GZRS) | ![Yes](../media/icons/yes-icon.png) | ![No](../media/icons/no-icon.png) |
32-
3321
## Common scenarios
3422

3523
SMB file shares are used for many applications including end-user file shares and file shares that back databases and applications. SMB file shares are often used in the following scenarios:
3624

37-
- End-user file shares such as team shares, home directories, etc.
38-
- Backing storage for Windows-based applications, such as SQL Server databases or line-of-business applications written for Win32 or .NET local file system APIs.
39-
- New application and service development, particularly if that application or service has a requirement for random IO and hierarchical storage.
25+
- End-user file shares such as team shares and home directories
26+
- Backing storage for Windows-based applications, such as SQL Server databases or line-of-business applications written for Win32 or .NET local file system APIs
27+
- New application and service development, particularly if that application or service has a requirement for random IO and hierarchical storage
4028

4129
## Features
4230

4331
Azure Files supports the major features of SMB and Azure needed for production deployments of SMB file shares:
4432

45-
- AD domain join and discretionary access control lists (DACLs).
46-
- Integrated serverless backup with Azure Backup.
47-
- Network isolation with Azure private endpoints.
48-
- High network throughput using SMB Multichannel (SSD file shares only).
49-
- SMB channel encryption including AES-256-GCM, AES-128-GCM, and AES-128-CCM.
50-
- Previous version support through VSS integrated share snapshots.
51-
- Automatic soft delete on Azure file shares to prevent accidental deletes.
52-
- Optionally internet-accessible file shares with internet-safe SMB 3.0+.
33+
- AD domain join and discretionary access control lists (DACLs)
34+
- Integrated serverless backup with Azure Backup
35+
- Network isolation with Azure private endpoints
36+
- High network throughput using SMB Multichannel (SSD file shares only)
37+
- SMB channel encryption including AES-256-GCM, AES-128-GCM, and AES-128-CCM
38+
- Previous version support through VSS integrated share snapshots
39+
- Automatic soft delete on Azure file shares to prevent accidental deletes
40+
- Optionally internet-accessible file shares with internet-safe SMB 3.0+
5341

5442
SMB file shares can be mounted directly on-premises or can also be [cached on-premises with Azure File Sync](../file-sync/file-sync-introduction.md).
5543

5644
## Security
5745

5846
All data stored in Azure Files is encrypted at rest using Azure storage service encryption (SSE). Storage service encryption works similarly to BitLocker on Windows: data is encrypted beneath the file system level. Because data is encrypted beneath the Azure file share's file system, as it's encoded to disk, you don't have to have access to the underlying key on the client to read or write to the Azure file share. Encryption at rest applies to both the SMB and NFS protocols.
5947

60-
By default, all Azure file shares have encryption in transit enabled, so only SMB mounts using SMB 3.x with encryption are allowed. Mounts from clients that do not support SMB 3.x with SMB channel encryption are rejected if encryption in transit is enabled.
48+
By default, all Azure file shares have encryption in transit enabled, so only SMB mounts using SMB 3.x with encryption are allowed. Mounts from clients that don't support SMB 3.x with SMB channel encryption are rejected if encryption in transit is enabled.
6149

6250
Azure Files supports AES-256-GCM with SMB 3.1.1 when used with Windows Server 2022 or Windows 11. SMB 3.1.1 also supports AES-128-GCM and SMB 3.0 supports AES-128-CCM. AES-128-GCM is negotiated by default on Windows 10, version 21H1 for performance reasons.
6351

@@ -69,7 +57,7 @@ Azure Files offers multiple settings that affect the behavior, performance, and
6957

7058
### SMB Multichannel
7159

72-
SMB Multichannel enables an SMB 3.x client to establish multiple network connections to an SMB file share. Azure Files supports SMB Multichannel on SSD file shares. SMB Multichannel is now enabled by default in all Azure regions.
60+
SMB Multichannel enables an SMB 3.x client to establish multiple network connections to an SMB file share. Azure Files supports SMB Multichannel on SSD file shares. For Windows clients, SMB Multichannel is now enabled by default in all Azure regions.
7361

7462
# [Portal](#tab/azure-portal)
7563
To view the status of SMB Multichannel, navigate to the storage account containing your SSD file shares and select **File shares** under the **Data storage** heading in the storage account table of contents. You should see the status of SMB Multichannel under the **File share settings** section. If you don't see it, make sure your storage account is of the FileStorage account kind.
@@ -81,7 +69,7 @@ To enable or disable SMB Multichannel, select the current status (**Enabled** or
8169
:::image type="content" source="media/files-smb-protocol/2-smb-multichannel-enable.png" alt-text="A screenshot of the dialog to enable/disable the SMB Multichannel feature.":::
8270

8371
# [PowerShell](#tab/azure-powershell)
84-
To get the status of SMB Multichannel, use the `Get-AzStorageFileServiceProperty` cmdlet. Remember to replace `<resource-group>` and `<storage-account>` with the appropriate values for your environment before running these PowerShell commands.
72+
To get the status of SMB Multichannel, use the `Get-AzStorageFileServiceProperty` cmdlet. Replace `<resource-group>` and `<storage-account>` with the appropriate values for your environment before running these PowerShell commands.
8573

8674
```PowerShell
8775
$resourceGroupName = "<resource-group>"
@@ -92,11 +80,12 @@ $storageAccount = Get-AzStorageAccount `
9280
-ResourceGroupName $resourceGroupName `
9381
-StorageAccountName $storageAccountName
9482
95-
# If you've never enabled or disabled SMB Multichannel, the value for the SMB Multichannel
96-
# property returned by Azure Files will be null. Null returned values should be interpreted
97-
# as "default settings are in effect". To make this more user-friendly, the following
98-
# PowerShell commands replace null values with the human-readable default values.
99-
$defaultSmbMultichannelEnabled = $false
83+
# If you've never enabled or disabled SMB Multichannel and your file share was created before
84+
# October 24, 2025, the value for the SMB Multichannel property returned by Azure Files will be
85+
# null. Null returned values should be interpreted as "default settings are in effect".
86+
# To make this more user-friendly, the following PowerShell commands replace null values with
87+
# the human-readable default values.
88+
$nullSmbMultichannelEnabled = $false
10089
10190
# Get the current value for SMB Multichannel
10291
Get-AzStorageFileServiceProperty -StorageAccount $storageAccount | `
@@ -107,7 +96,7 @@ Get-AzStorageFileServiceProperty -StorageAccount $storageAccount | `
10796
Name = "SmbMultichannelEnabled";
10897
Expression = {
10998
if ($null -eq $_.ProtocolSettings.Smb.Multichannel.Enabled) {
110-
$defaultSmbMultichannelEnabled
99+
$nullSmbMultichannelEnabled
111100
} else {
112101
$_.ProtocolSettings.Smb.Multichannel.Enabled
113102
}
@@ -124,22 +113,23 @@ Update-AzStorageFileServiceProperty `
124113
```
125114

126115
# [Azure CLI](#tab/azure-cli)
127-
To get the status of SMB Multichannel, use the `az storage account file-service-properties show` command. Remember to replace `<resource-group>` and `<storage-account>` with the appropriate values for your environment before running these Bash commands.
116+
To get the status of SMB Multichannel, use the `az storage account file-service-properties show` command. Replace `<resource-group>` and `<storage-account>` with the appropriate values for your environment before running these commands.
128117

129118
```bash
130119
RESOURCE_GROUP_NAME="<resource-group>"
131120
STORAGE_ACCOUNT_NAME="<storage-account>"
132121

133-
# If you've never enabled or disabled SMB Multichannel, the value for the SMB Multichannel
134-
# property returned by Azure Files will be null. Null returned values should be interpreted
135-
# as "default settings are in effect". To make this more user-friendly, the following
136-
# PowerShell commands replace null values with the human-readable default values.
122+
# If you've never enabled or disabled SMB Multichannel and your file share was created before
123+
# October 24, 2025, the value for the SMB Multichannel property returned by Azure Files will be
124+
# null. Null returned values should be interpreted as "default settings are in effect".
125+
# To make this more user-friendly, the following commands replace null values with
126+
# the human-readable default values.
137127

138128
## Search strings
139129
REPLACESMBMULTICHANNEL="\"smbMultichannelEnabled\": null"
140130

141131
# Replacement values for null parameters.
142-
DEFAULTSMBMULTICHANNELENABLED="\"smbMultichannelEnabled\": false"
132+
NULLSMBMULTICHANNELENABLED="\"smbMultichannelEnabled\": false"
143133

144134
# Build JMESPath query string
145135
QUERY="{"
@@ -153,7 +143,7 @@ protocolSettings=$(az storage account file-service-properties show \
153143
--query "${QUERY}")
154144

155145
# Replace returned values if null with default values
156-
PROTOCOL_SETTINGS="${protocolSettings/$REPLACESMBMULTICHANNEL/$DEFAULTSMBMULTICHANNELENABLED}"
146+
PROTOCOL_SETTINGS="${protocolSettings/$REPLACESMBMULTICHANNEL/$NULLSMBMULTICHANNELENABLED}"
157147

158148
# Print returned settings
159149
echo $PROTOCOL_SETTINGS
@@ -179,7 +169,7 @@ To enable all SMB Multichannel fixes for Windows Server 2016 and Windows 10 vers
179169

180170
```PowerShell
181171
Set-ItemProperty `
182-
-Path "HKLM:SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides" `
172+
-Path "HKLM:\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides" `
183173
-Name "2291605642" `
184174
-Value 1 `
185175
-Force

0 commit comments

Comments
 (0)