Skip to content

Commit 68331af

Browse files
authored
Merge pull request #217262 from khdownie/kendownie1122-aadkerb
Azure AD Kerberos GA updates
2 parents 7ac6f8b + 307087c commit 68331af

File tree

5 files changed

+92
-20
lines changed

5 files changed

+92
-20
lines changed

articles/storage/files/TOC.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@
111111
href: storage-files-identity-ad-ds-update-password.md
112112
- name: Enable Azure AD DS authentication and authorization
113113
href: storage-files-identity-auth-active-directory-domain-service-enable.md
114-
- name: Enable Azure AD Kerberos authentication for hybrid accounts (preview)
114+
- name: Enable Azure AD Kerberos authentication for hybrid accounts
115115
href: storage-files-identity-auth-azure-active-directory-enable.md
116116
- name: Manage
117117
items:
Loading

articles/storage/files/storage-files-identity-auth-azure-active-directory-enable.md

Lines changed: 88 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,16 @@ description: Learn how to enable identity-based Kerberos authentication for hybr
44
author: khdownie
55
ms.service: storage
66
ms.topic: how-to
7-
ms.date: 10/31/2022
7+
ms.date: 11/07/2022
88
ms.author: kendownie
99
ms.subservice: files
1010
---
1111

12-
# Enable Azure Active Directory Kerberos authentication for hybrid identities on Azure Files (preview)
12+
# Enable Azure Active Directory Kerberos authentication for hybrid identities on Azure Files
1313
[!INCLUDE [storage-files-aad-auth-include](../../../includes/storage-files-aad-auth-include.md)]
1414

1515
This article focuses on enabling and configuring Azure AD for authenticating [hybrid user identities](../../active-directory/hybrid/whatis-hybrid-identity.md), which are on-premises AD identities that are synced to the cloud. This allows Azure AD users to access Azure file shares using Kerberos authentication. This configuration uses Azure AD to issue the necessary Kerberos tickets to access the file share with the industry-standard SMB protocol. This means your end users can access Azure file shares over the internet without requiring a line-of-sight to domain controllers from hybrid Azure AD-joined and Azure AD-joined VMs. However, configuring Windows access control lists (ACLs) and permissions might require line-of-sight to the domain controller.
1616

17-
> [!IMPORTANT]
18-
> Azure Files authentication with Azure Active Directory Kerberos is currently in public preview.
19-
2017
For more information on supported options and considerations, see [Overview of Azure Files identity-based authentication options for SMB access](storage-files-active-directory-overview.md). For more information about Azure AD Kerberos, see [Deep dive: How Azure AD Kerberos works](https://techcommunity.microsoft.com/t5/itops-talk-blog/deep-dive-how-azure-ad-kerberos-works/ba-p/3070889).
2118

2219
## Applies to
@@ -53,20 +50,24 @@ Azure Files authentication with Azure AD Kerberos is available in Azure public c
5350

5451
## Enable Azure AD Kerberos authentication for hybrid user accounts
5552

56-
To enable Azure AD Kerberos authentication on Azure Files for hybrid user accounts, use the Azure portal.
53+
You can enable Azure AD Kerberos authentication on Azure Files for hybrid user accounts using the Azure portal, PowerShell, or Azure CLI.
54+
55+
# [Portal](#tab/azure-portal)
56+
57+
To enable Azure AD Kerberos authentication using the [Azure portal](https://portal.azure.com), follow these steps.
5758

5859
1. Sign in to the Azure portal and select the storage account you want to enable Azure AD Kerberos authentication for.
5960
1. Under **Data storage**, select **File shares**.
6061
1. Next to **Active Directory**, select the configuration status (for example, **Not configured**).
6162

6263
:::image type="content" source="media/storage-files-identity-auth-azure-active-directory-enable/configure-active-directory.png" alt-text="Screenshot of the Azure portal showing file share settings for a storage account. Active Directory configuration settings are selected." lightbox="media/storage-files-identity-auth-azure-active-directory-enable/configure-active-directory.png" border="true":::
6364

64-
1. Under **Azure AD Kerberos (preview)**, select **Set up**.
65+
1. Under **Azure AD Kerberos**, select **Set up**.
6566
1. Select the **Azure AD Kerberos** checkbox.
6667

67-
:::image type="content" source="media/storage-files-identity-auth-azure-active-directory-enable/setup-azure-ad-kerberos.png" alt-text="Screenshot of the Azure portal showing Active Directory configuration settings for a storage account. Azure AD Kerberos is selected." lightbox="media/storage-files-identity-auth-azure-active-directory-enable/setup-azure-ad-kerberos.png" border="true":::
68+
:::image type="content" source="media/storage-files-identity-auth-azure-active-directory-enable/enable-azure-ad-kerberos.png" alt-text="Screenshot of the Azure portal showing Active Directory configuration settings for a storage account. Azure AD Kerberos is selected." lightbox="media/storage-files-identity-auth-azure-active-directory-enable/enable-azure-ad-kerberos.png" border="true":::
6869

69-
1. Optional: If you want to configure directory and file-level permissions through Windows File Explorer, then you also need to specify the domain name and domain GUID for your on-premises AD. You can get this information from your domain admin or by running the following PowerShell cmdlets from an on-premises AD-joined client:
70+
1. **Optional:** If you want to configure directory and file-level permissions through Windows File Explorer, then you also need to specify the domain name and domain GUID for your on-premises AD. You can get this information from your domain admin or by running the following Active Directory PowerShell cmdlets from an on-premises AD-joined client:
7071

7172
```PowerShell
7273
$domainInformation = Get-ADDomain
@@ -78,6 +79,56 @@ To enable Azure AD Kerberos authentication on Azure Files for hybrid user accoun
7879

7980
1. Select **Save**.
8081

82+
# [Azure PowerShell](#tab/azure-powershell)
83+
84+
To enable Azure AD Kerberos using Azure PowerShell, run the following command. Remember to replace placeholder values, including brackets, with your values.
85+
86+
```azurepowershell
87+
Set-AzStorageAccount -ResourceGroupName <resourceGroupName> -StorageAccountName <storageAccountName> -EnableAzureActiveDirectoryKerberosForFile $true
88+
```
89+
90+
**Optional:** If you want to configure directory and file-level permissions through Windows File Explorer, then you also need to specify the domain name and domain GUID for your on-premises AD. If you'd prefer to configure directory and file-level permissions using icacls, you can skip this step. However, if you want to use icacls, the client will need line-of-sight to the on-premises AD.
91+
92+
You can get this information from your domain admin or by running the following Active Directory PowerShell cmdlets from an on-premises AD-joined client:
93+
94+
```PowerShell
95+
$domainInformation = Get-ADDomain
96+
$domainGuid = $domainInformation.ObjectGUID.ToString()
97+
$domainName = $domainInformation.DnsRoot
98+
```
99+
100+
To specify the domain name and domain GUID for your on-premises AD, run the following Azure PowerShell command. Remember to replace placeholder values, including brackets, with your values.
101+
102+
```azurepowershell
103+
Set-AzStorageAccount -ResourceGroupName <resourceGroupName> -StorageAccountName <storageAccountName> -EnableAzureActiveDirectoryKerberosForFile $true -ActiveDirectoryDomainName $domainName -ActiveDirectoryDomainGuid $domainGuid
104+
```
105+
106+
# [Azure CLI](#tab/azure-cli)
107+
108+
To enable Azure AD Kerberos using Azure CLI, run the following command. Remember to replace placeholder values, including brackets, with your values.
109+
110+
```azurecli
111+
az storage account update --name <storageaccountname> --resource-group <resourcegroupname> --enable-files-aadkerb true
112+
```
113+
114+
**Optional:** If you want to configure directory and file-level permissions through Windows File Explorer, then you also need to specify the domain name and domain GUID for your on-premises AD. If you'd prefer to configure directory and file-level permissions using icacls, you can skip this step. However, if you want to use icacls, the client will need line-of-sight to the on-premises AD.
115+
116+
You can get this information from your domain admin or by running the following Active Directory PowerShell cmdlets from an on-premises AD-joined client:
117+
118+
```PowerShell
119+
$domainInformation = Get-ADDomain
120+
$domainGuid = $domainInformation.ObjectGUID.ToString()
121+
$domainName = $domainInformation.DnsRoot
122+
```
123+
124+
To specify the domain name and domain GUID for your on-premises AD, run the following command. Remember to replace placeholder values, including brackets, with your values.
125+
126+
```azurecli
127+
az storage account update --name <storageAccountName> --resource-group <resourceGroupName> --enable-files-aadkerb true --domain-name <domainName> --domain-guid <domainGuid>
128+
```
129+
130+
---
131+
81132
> [!WARNING]
82133
> If you've previously enabled Azure AD Kerberos authentication through manual limited preview steps to store FSLogix profiles on Azure Files for Azure AD-joined VMs, the password for the storage account's service principal is set to expire every six months. Once the password expires, users won't be able to get Kerberos tickets to the file share. To mitigate this, see "Error - Service principal password has expired in Azure AD" under [Potential errors when enabling Azure AD Kerberos authentication for hybrid users](storage-troubleshoot-windows-file-connection-problems.md#potential-errors-when-enabling-azure-ad-kerberos-authentication-for-hybrid-users).
83134
@@ -101,7 +152,7 @@ After enabling Azure AD Kerberos authentication, you'll need to explicitly grant
101152
Azure AD Kerberos doesn't support using MFA to access Azure file shares configured with Azure AD Kerberos. You must exclude the Azure AD app representing your storage account from your MFA conditional access policies if they apply to all apps. The storage account app should have the same name as the storage account in the conditional access exclusion list.
102153

103154
> [!IMPORTANT]
104-
> If you don't exclude MFA policies from the storage account app, you won't be able to access the file share. Trying to map the file share using *net use* will result in an error message that says "System error 1327: Account restrictions are preventing this user from signing in. For example: blank passwords aren't allowed, sign-in times are limited, or a policy restriction has been enforced."
155+
> If you don't exclude MFA policies from the storage account app, you won't be able to access the file share. Trying to map the file share using `net use` will result in an error message that says "System error 1327: Account restrictions are preventing this user from signing in. For example: blank passwords aren't allowed, sign-in times are limited, or a policy restriction has been enforced."
105156
106157
## Assign share-level permissions
107158

@@ -116,7 +167,7 @@ Once your share-level permissions are in place, there are two options for config
116167
- **Windows Explorer experience:** If you choose this option, then the client must be domain-joined to the on-premises AD.
117168
- **icacls utility:** If you choose this option, then the client needs line-of-sight to the on-premises AD.
118169

119-
To configure directory and file level permissions through Windows File explorer, you also need to specify domain name and domain GUID for your on-premises AD. You can get this information from your domain admin or from an on-premises AD-joined client. If you prefer to configure using icacls, this step is not required.
170+
To configure directory and file-level permissions through Windows File explorer, you also need to specify domain name and domain GUID for your on-premises AD. You can get this information from your domain admin or from an on-premises AD-joined client. If you prefer to configure using icacls, this step is not required.
120171

121172
To configure directory and file-level permissions, follow the instructions in [Configure directory and file-level permissions over SMB](storage-files-identity-ad-ds-configure-permissions.md).
122173

@@ -134,24 +185,45 @@ Changes are not instant, and require a policy refresh or a reboot to take effect
134185

135186
## Disable Azure AD authentication on your storage account
136187

137-
If you want to use another authentication method, you can disable Azure AD authentication on your storage account by using the Azure portal.
188+
If you want to use another authentication method, you can disable Azure AD authentication on your storage account by using the Azure portal, Azure PowerShell, or Azure CLI.
138189

139190
> [!NOTE]
140191
> Disabling this feature means that there will be no Active Directory configuration for file shares in your storage account until you enable one of the other Active Directory sources to reinstate your Active Directory configuration.
141192
142-
1. Sign in to the Azure portal and select the storage account you want to enable Azure AD Kerberos authentication for.
193+
# [Portal](#tab/azure-portal)
194+
195+
To disable Azure AD Kerberos authentication on your storage account by using the Azure portal, follow these steps.
196+
197+
1. Sign in to the Azure portal and select the storage account you want to disable Azure AD Kerberos authentication for.
143198
1. Under **Data storage**, select **File shares**.
144-
1. Next to **Active Directory**, select the configuration status (for example, **Not configured**).
145-
1. Under **Azure AD Kerberos (preview)**, select **Set up**.
199+
1. Next to **Active Directory**, select the configuration status.
200+
1. Under **Azure AD Kerberos**, select **Configure**.
146201
1. Uncheck the **Azure AD Kerberos** checkbox.
147202
1. Select **Save**.
148203

204+
# [Azure PowerShell](#tab/azure-powershell)
205+
206+
To disable Azure AD Kerberos authentication on your storage account by using Azure PowerShell, run the following command. Remember to replace placeholder values, including brackets, with your values.
207+
208+
```azurepowershell
209+
Set-AzStorageAccount -ResourceGroupName <resourceGroupName> -StorageAccountName <storageAccountName> -EnableAzureActiveDirectoryKerberosForFile $false
210+
```
211+
212+
# [Azure CLI](#tab/azure-cli)
213+
214+
To disable Azure AD Kerberos authentication on your storage account by using Azure CLI, run the following command. Remember to replace placeholder values, including brackets, with your values.
215+
216+
```azurecli
217+
az storage account update --name <storageaccountname> --resource-group <resourcegroupname> --enable-files-aadkerb false
218+
```
219+
220+
---
221+
149222
## Next steps
150223

151224
For more information, see these resources:
152225

153226
- [Potential errors when enabling Azure AD Kerberos authentication for hybrid users](storage-troubleshoot-windows-file-connection-problems.md#potential-errors-when-enabling-azure-ad-kerberos-authentication-for-hybrid-users)
154227
- [Overview of Azure Files identity-based authentication support for SMB access](storage-files-active-directory-overview.md)
155-
- [Enable AD DS authentication to Azure file shares](storage-files-identity-ad-ds-enable.md)
156228
- [Create a profile container with Azure Files and Azure Active Directory](../../virtual-desktop/create-profile-container-azure-ad.md)
157229
- [FAQ](storage-files-faq.md)

includes/storage-files-aad-auth-include.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@
55
author: khdownie
66
ms.service: storage
77
ms.topic: include
8-
ms.date: 10/03/2022
8+
ms.date: 11/07/2022
99
ms.author: kendownie
1010
ms.custom: include file
1111
---
1212

13-
Azure Files supports identity-based authentication over Server Message Block (SMB) using the Kerberos authentication protocol through the following three methods:
13+
Azure Files supports identity-based authentication for Windows file shares over Server Message Block (SMB) using the Kerberos authentication protocol through the following three methods:
1414

1515
- On-premises Active Directory Domain Services (AD DS)
1616
- Azure Active Directory Domain Services (Azure AD DS)
17-
- Azure Active Directory Kerberos (Azure AD) for hybrid user identities only (preview)
17+
- Azure Active Directory (Azure AD) Kerberos for hybrid user identities

0 commit comments

Comments
 (0)